Данный материал взят с сайта old.shatalov.su и является его зеркалом

Создаём компьютерную игру. Создание игр на C++/DirectX

Есть вопросы?
Ошибка на сайте?
рус eng esp
Внимание! Данный сайт не обновляется. Новая версия: shatalov.su

Как поменять кодировку (encoding) в текстовом редакторе?

Дата создания: 2012-05-07 07:11:41
Последний раз редактировалось: 2012-05-07 07:13:51

Я давно искал, в какой урок засунуть данный материал. В итоге решил немного расширить его и положить в отдельную статью.

Итак, сегодня мы научимся менять кодировку (encoding) в двух текстовых редакторах: стандартный блокнот (notepad) и Notepad++

Но сначала пару слов о текстовых файлах.

Текстовые файлы

Существует два вида текстовых файлов: простые текстовые файлы и текстовые файлы, содержащие информацию о форматировании (так называемый Rich Text Format).

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

Кодировка файлов

Все текстовые файлы имеют какую-то кодировку. Основных две: ANSI и Юникод. В ANSI кодировках (а их много) может быть закодировано только 256 символов. Если у вас русифицированная Windows, то блокнот создаёт текстовые документы в кодировке Windows-1251 - это одна из кодировок ANSI. Какая кодировка ANSI используется, зависит от языка операционной системы.

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

BOM (Byte Order Mark) - метка порядка байтов

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

Метка состоит из 2-4 байтов.

Использование BOM необязательно, а в некоторых случаях и нежелательно - особенно, если речь идёт о файлах с исходным кодом.

Ну а теперь, посмотрим, как менять кодировку в текстовых редакторах:

Смена кодировки файлов в блокноте (notepad)

Notepad (блокнот) - стандартный текстовый редактор Windows

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

Сохранение файла в блокноте

Для этого используется пункт меню Файл -> Сохранить как...

В открывшемся диалоговом окне внизу можно выбрать нужную кодировку. Причём вариантов всего четыре:

Смена кодировки (encoding) в блокноте

ANSI - одна из кодировок ANSI (зависит от текущего языка ОС), Unicode - Little-Endian версия Юникода, которая используется в Windows. Unicode BE - Big-Endian версия Юникода (используется в (*NIX ОС), UTF-8 - Юникод для хранения файлов в интернете.

Как поменять кодировку в Notepad++

В Notepad++ есть возможность сохранить текст в UTF-8 без BOM метки. А также можно сохранить файл в различных версиях ANSI (пункт меню Кодировки -> Кодировки).

Смена кодировки (encoding) в Notepad++

Заключение

Зачем нам знать, как менять кодировку в текстовых редакторах? IDE Visual C++ сама выбирает кодировку. Если вы откроете любой файл с исходным кодом (.cpp или .h) в простом текстовом редакторе, то увидите, что кодировка этого файла - ANSI.

В программах на ассемблере мы тоже будем использовать ANSI - этого требует компилятор. А вот когда будем разбирать скриптовые языки, то файлы с исходниками можно будет сохранять в UTF-8.