как ОС знает кодировку файлов - PullRequest
3 голосов
/ 30 сентября 2011

Например, у меня есть файл на моем диске: a.txt Я открыл его в шестнадцатеричном режиме и не вижу в нем другого символа сигнала, кроме обычного текста в UTF-8.

Мне интересно, откуда ОС знает, что это UTF-8 ??

Спасибо

Ответы [ 2 ]

2 голосов
/ 30 сентября 2011

ОС не знает. Шестнадцатеричный редактор, вероятно, автоматически определяет его. Это возможно, если посмотреть на наличие и отсутствие определенных пар байтов, но это не на 100% надежно.

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

Один из способов пометить файл UTF-8 или -16 - это BOM , но это не обязательно.

0 голосов
/ 30 сентября 2011

ОС не имеет концепции кодирования текстовых файлов. Текстовые редакторы обычно догадываются по содержимому или предполагают UTF-8 или кодировку по умолчанию для вашей локали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...