Многоязычные текстовые файлы PC-DOS, MS-DOS и Windows

Насколько я знаю, в 1987 году были выпущены PC-DOS 3.3, а также MS-DOS 3.3, и они имели несколько кодовых страниц (850, 860, 863, 865).

Означает ли это, что пользователь может писать текст, используя португальские (cp860) и, скажем, скандинавские (cp865) символы в одном файле?

Или это было что-то вроде одной кодовой страницы на одну операционную систему. Например, PC-DOS из Португалии имела только кодовую страницу 860, и пользователь мог использовать символы только из этой кодовой страницы, а PC-DOS из Скандинавии имела только кодовую страницу 865.

Тот же вопрос по винде. С какой версии он начал поддерживать многоязычные текстовые документы?


person No Name QA    schedule 29.04.2019    source источник


Ответы (2)


DOS на самом деле не знает кодовой страницы. Это были просто строки ASCII (с нулевым или долларовым окончанием).

Кодовая страница использовалась в основном для отображения: изменение кодовой страницы меняет способ печати байт-кода на экране.

То что вы тут описываете, это частая проблема: смешанная кодировка в одном тексте. Если вы достаточно взрослый, вы помните много таких проблем в сети. Текстовый файл не имеет тега или метаданных о кодовой странице. Если вы смешаете его, вы просто увидите символы в соответствии с активной кодовой страницей. Вы меняете кодовую страницу экрана и получаете новую интерпретацию символов.

person Giacomo Catenazzi    schedule 29.04.2019
comment
Спасибо, но, возможно, вы меня неправильно поняли. Я спрашивал именно о кодовых страницах в PC-DOS. В 1987 году их было несколько. И у меня такой вопрос: в операционной системе была одна кодовая страница или несколько? Таким образом, я мог выбрать, какую кодовую страницу использовать для чтения данных файла. - person No Name QA; 29.04.2019
comment
@NoNameQA Кодовая страница не используется при чтении данных файла, как пытается объяснить этот ответ. - person Ross Ridge; 29.04.2019
comment
@NoNameQA: см. кодовую страницу как шрифт всего с 256 символами. Выбор шрифта находится в средстве просмотра, а не в текстовом файле. В эпоху растровых изображений (то есть PC-DOS): программы пишут в определенном месте код (256 символов), а BIOS/видеокарта переводит каждый символ в глиф. У вас может быть только один активный. В текстовом режиме не было ни графиков, ни смешанных режимов и т.п. Меняя кодовую страницу, вы просто меняете растровое изображение шрифта. это просто дисплей. - person Giacomo Catenazzi; 29.04.2019

Вы можете делать со своим файлом все, что хотите. Это общение, как читать это другим, что было бы проблемой.

Так что нет, не совсем. Использование более чем одной кодировки символов в файле и обращение к нему как к текстовому файлу доставят больше проблем, чем пользы.

То, что настройка операционной системы не имеет прямого отношения к содержимому файла. Программы, которые обмениваются файлами между системами (например, через Интернет), могут использовать понимание исходной кодировки символов и локальные настройки кодировки символов и выполнять транскодирование с потерями.

Ничего не изменилось, за исключением того, что с появлением Unicode более 25 лет назад в одном наборе символов доступно больше скриптов, чем вы можете себе представить. Таким образом, если нужно выполнить какое-либо перекодирование, в идеале это должно быть только UTF-8.

person Tom Blodget    schedule 29.04.2019