jterror
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Celsus - BOM это специальная метка в начале файла указывающая кодировку, поэтому при наличии BOM в файле, проблем с неправильной кодировкой (кракозяблов) не будет. - Проводник создает новый текстовый документ в виде пустого файла без содержимого (0 байт). - Пустой файл может быть любой кодировкой, ведь содержимое может быть любым, за исключением кодировок с BOM, ведь BOM это уже содержимое, а его в пустом файле нет. - Дальнейшее зависит от программы-редактора текста. BOM нет, значит любая кодировка без BOM (ANSI, UTF-8, UTF-16 и т.д.). - Блокнот берет по умолчанию кодировку из группы ANSI языка установленного в настройках Windows: Панель управления > Регион > Административные > Язык для программ не использующих юникод. Эта кодировка своя для каждого языка, поэтому если в редакторе (Notepad++) установлена не та, будут кракозяблы. - У вас с настройке выше установлено Hebrew, если надо русскую, поставьте там русский язык, тогда Блокнот будет сохранять как ANSI русскую 1251. В самом Блокноте нет настроек кодировки, иначе в нём кодировку не поменять. Цитата: Как поменять кодировку по умолчанию? Чтобы при открытии текстового файла открывался с определенной кодировкой. | В целом это невозможно, т.к. может подразумевать преобразование файла, а функция открытия только открывает файл как есть не меняя его. Преобразование это другая функция, либо специальная, либо преобразование происходит при сохранении файла, но никак не при его открытии. Цитата: Я нашел твик реестра, чтобы через контекстное меню проводника документ создавался не блокнотом windows, а notepad++ | Если этот твик действительно работает и файл создается Notepad++-ом, тогда в его настройках нового документа нужно установить кодировку с BOM, тогда неоднозначности не будет и любые программы будут открывать файл корректно. Это легко проверить, новый созданный файл будет уже не пустой 0 байт, а несколько байт (размер BOM). |