Windows как проверить кодировку файла

Как определить кодировку файла?

В моей файловой системе (Windows 7) у меня есть несколько текстовых файлов (это файлы сценариев SQL, если это имеет значение).

При открытии с помощью Notepad ++ в меню «Кодировка» сообщается, что некоторые из них имеют кодировку «UCS-2 Little Endian», а некоторые — «UTF-8 без BOM».

В чем здесь разница? Все они кажутся совершенно правильными сценариями. Как я могу сказать, какие кодировки у файла без Notepad ++?

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

Например, файл с первыми тремя байтами 0xEF,0xBB,0xBF , вероятно , является файлом в кодировке UTF-8. Однако это может быть файл ISO-8859-1, который начинается с символов  . Или это может быть совершенно другой тип файла.

Notepad ++ делает все возможное, чтобы угадать, какую кодировку использует файл, и в большинстве случаев он делает это правильно. Хотя иногда это не так — поэтому меню «Кодировка» есть, поэтому вы можете отменить его лучшее предположение.

Для двух кодировок вы упоминаете:

  • Файлы «Little Endian UCS-2» — это файлы UTF-16 (основанные на том, что я понимаю из информации здесь ), поэтому, вероятно, начнем с 0xFF,0xFE первых 2 байтов. Из того, что я могу сказать, Notepad ++ описывает их как «UCS-2», поскольку он не поддерживает определенные аспекты UTF-16.
  • Файлы «UTF-8 без BOM» не имеют байтов заголовков. Вот что означает бит «без спецификации».

Работа с текстом. Как определить кодировку файла

Давайте узнаем, что такое кодировка файла. Говоря проще, кодировкой считается набор байтовых символов, который соответствует буквенному алфавиту в определенном языке. Для каждого языка существует своя определенная последовательность таких знаков кодирования. Иногда возникает потребность определить кодировку. Рассмотрим это на примере текстового документа.

Что нужно

Набор определенных программных средств. Для начала достаточно приложений типа Word, KWrite, браузера Firefox и средства распознавания – enca.

Определить кодировку файла можно при помощи универсального редактора Microsoft Word. Прежде, его нужно проинсталлировать из пакета Office. Когда приложение будет установлено, и сможет открываться с помощью иконки в виде символа W на рабочем столе, переходим к следующему шагу.

Следующий этап распознавания

Через навигационную панель приложения по очереди откройте пункты «Файл» — «открыть». То же самое можно сделать, задействовав комбинацию клавиатуры Ctrl+O.

Затем в диалоговом окне выберите нужный каталог и, собственно, файл для чтения. Выделив его мышью, нажмите кнопку «открытие».

Когда у файла набор соответствий не CP1251, приложение пытается самостоятельно определить кодировку. Будет выведен список возможных соответствий. В предложенных наборах символов в правой части списка выберите одну из кодировок. Если выбор сделан правильно, в элементе «образец» отобразится распознанный текст.

Читайте также:  Dunst linux что это

Как определить кодировку посредством KWrite

Кроме препроцессора для обработки текста, Word, существуют и другие функциональные утилиты. Одна из них — KWrite (аналог для unix-систем). Чтобы вы не путались, распишу по пунктам задачу «определить кодировку документа в KWrite».

  1. Загрузка в приложение файла с расширением .txt.
  2. Перебор кодировок до тех пор, пока одна из них не окажется подходящей.
  3. Чтобы выполнить пункт 2, перейдите к опции tools в меню encoding.

Браузер Mozilla Firefox, цель та же – определить кодировку

Принцип примерно тот же, что и в утилитах для работы с текстом. Запускаем проинсталлированный браузер на выполнение, а если он не установлен – скачиваем инсталлятор с mozilla.org.

Затем в открытом окне программы нужно открыть текстовый документ через меню «Файл», подменю «Открыть файл». Если выбранный файл отобразится без искажений, и текст читаемый, определить кодировку не составит труда.

Для этого перейдите на «Вид» — «кодировка », там отображено несколько наборов символов, а тот из них, напротив которого стоит «галочка», и есть определенная браузером кодировка.

Если же текст не распознался правильно, выберите подраздел «дополнительно», поэкспериментируйте в нем с кодировками или выберите значение «авто».

Специализированное ПО – работаем с enca

Существует и ряд вспомогательных электронных средств, дающих возможность определить кодировку неформатированного текста.

Для тех, кто привык работать под unix, подойдет утилита enca. Ее можно установить при помощи сервиса «Диспетчер пакетов». Найдя доступную категорию пакетов, можно приступить к установке программного обеспечения.

Чтобы вывести листинг языков распознавания, выполните команду enca —list languages, используя терминал.

Если нужно определить кодировку текстового файла после ключа (g), введите его название, а после опции (L) примерно таким же образом введите язык распознавания:

enca -L russian -g /home/vic/temp/myfile.txt.

Подытожим сказанное о кодировке

Полагаю, что указанные выше утилиты станут для пользователя достаточным набором инструментов для раскодировки текстовых документов.

Пока, собственно, это всё о том, как распознать кодировку. Для стандартных целей, думаю, указанное программное обеспечение вполне подойдет. Есть и более специализированные методы определения, но их рассмотрение выходит за рамки этой статьи.

Для программы Microsoft Word источником распознавания может быть как простой текст, так и документ со сложным форматированием.

FAQ: Как проверить кодировку в текстовом файле?

Программный комплекс SocialKit корректно работает с кириллицей в текстовых файлах, кодировка которых соответствует стандарту Windows-1251 (кратко может быть записано как CP1251 или ANSI). В этой связи в задачах, поддерживающих указание внешнего файла с перечнем комментариев, сообщений, описаний и прочей информации, которая может содержать кириллицу, нужно указывать текстовые файлы, где русский текст задан в кодировке по стандарту Windows-1251 или же просто ANSI, или CP1251 — всё это, по сути, одно и то же.

Читайте также:  Российские линукс дистрибутивы 2019 для дома

Учитывая, что многие инструменты по работе с текстом не отображают, в какой именно кодировке задан текст в текстовом файле и/или не поддерживают преобразование кодировок, то у новичков часто возникает вопрос о том, как именно привести кодировку текстового файла с русским текстом к понятному для SocialKit формату CP1251.

Следует сразу отметить, что большинство текстовых редакторов для ОС Windows (например, встроенный Блокнот и Wordpad) по умолчанию создают текстовые файлы именно с кодировкой по стандарту Windows-1251. Однако, эта кодировка по умолчанию может быть изменена в следствие тех или иных действий.

Если вы не уверены в том, в какой именно кодировке задан текст, то проще всего этот текст пересохранить через стандартный Блокнот Windows. При пересохранении Блокнот также покажет, в каком формате текст сейчас.

Опишем эту простую процедуру по шагам.

1. Открыть искомый текстовый файл в Блокноте Windows и выбрать пункт меню «Файл» -> «Сохранить как. «.

Пример текстового файла, в котором русский текст задан в формате UTF, но это не очевидно при открытии.

2. В открывшемся диалоговом окне вы сразу видите, в какой кодировке был сохранён текст в текстовом файле.

Диалоговое окно пересохранения текстового файла, в котором можно сразу изменить кодировку.

Как видно, в примере текст в текстовом файле был ранее сохранён в кодировке UTF-8. Для изменения кодировке достаточно выбрать в выпадающем списке кодировку ANSI и нажать кнопку «Сохранить«.

При этом зрительно для вас ничего не изменится, но многое изменится для программы и алгоритмов, занимающихся обработкой текста в процессе отправки. Корректно Instagram’у будет отправлен только ANSI-текст.

Кодировки в Windows

В данной статье пойдёт речь о кодировках в Windows. Все в жизни хоть раз использовали и писали консольные приложения как таковые. Нету разницы для какой причины. Будь-то выбивание процесса или же просто написать «Привет. Я не могу сделать кодировку нормальной, поэтому я смотрю эту статью!».

Тем, кто ещё не понимает, о чём проблема, то вот Вам:

А тут было написано:

Но никто ничего не понял.

В любом случае в Windows до 10 кодировка BAT и других языков, не использует кодировку поддерживающую Ваш язык, поэтому все русские символы будут писаться неправильно.

1. Настройка консоли в батнике

Сразу для тех, кто пишет chcp 1251 лучше написать это:

Первый способ устранения проблемы, это Notepad++. Для этого Вам нужно открыть Ваш батник таким способом:

Не бойтесь, у Вас откроется код Вашего батника, а затем Вам нужно будет сделать следующие действия:

Если Вам ничего не помогло, то преобразуйте в UTF-8 без BOM.

2. Написание консольных программ
Нередко люди пишут консольные программы(потому что на некоторых десктопные писать невозможно), а кодировка частая проблема.

Читайте также:  Intel high definition audio driver windows 10 x64

Первый способ непосредственно Notepad++, но а если нужно сначала одну кодировку, а потом другую?

Сразу для использующих chcp 1251 пишите это:

Второй способ это написать десктопную программу, или же использовать Visual Studio. Если же не помогает, то есть первое: изменение кодировки вывода(Пример на C++).

Если же не сработает:

3. Изменение chcp 1251
Если же у Вас батник, то напишите в начало:

Теперь у Нас будет нормальный вывод в консоль. На других языках (С++):

4. Сделать жизнь мёдом
При использовании данного способа Вы не сможете:

  • Разрабатывать приложения на Windows ниже 10
  • Спасти мир от данной проблемы
  • Думать о других людях
  • Разрабатывать десктопные приложения, так как Вам жизнь покажется мёдом
  • Сменить Windows на версию ниже 10
  • Ну и понимать людей, у которых Windows ниже 10

Установить Windows 10. Там кодировка консоли специально подходит для языка страны, и Вам больше не нужно будет беспокоиться об этой проблеме. Но у Вас появится ещё 6 проблем, и вернуться к предыдущей лицензионной версии Windows Вы не сможете.

Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.

Как определить кодировку файла

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

Сделать это можно с помощью онлайн-декодера, который находится по адресу http://www.artlebedev.ru/tools/decoder/. Главным образом он служит для распознавания электронных писем. После того, как вы открыли декодер, скопируйте нужный вам текст в буфер обмена. Далее вставляет текст в поле декодера и нажимаем «расшифровать», после чего в поле должен появиться расшифрованный текст, а ниже исходная кодировка и кодировка, в которую был перекодирован текст.

Декодировать текст можно с помощью специальной программы, например Tcode, которую можно скачать по ссылке http://it.sander.su/download.php. Далее можете воспользоваться функцией «открыть файл» или вставить текст из кодированного файла. Нажимаем «перекодировать» и текст должен будет преобразоваться в нужную кодировку. В строке состояния будет показана исходная кодировка. Там же можно посмотреть процент распознания символов.

Последний вариант, который мы рассмотрим сегодня- это распознавание с помощью программы AkelPad. Тут тоже всё достаточно просто. После скачивания и запуска программы надо вставить нужный вам текст из файла. В меню «кодировка» выбираем «определить кодировку», сделать это можно так же сочетанием клавиш Alt+F5. После чего появится окно с исходной кодировкой. С помощью данной программы так же можно перекодировать текст в нужную вам кодировку.

Оцените статью