Проверяя исходный код Notepad ++, я вижу, что опция «Применить к открытым файлам ANSI» помечена неправильно. Должно быть написано «Применить к открытым ASCII- файлам», поскольку оно относится только к 7-битным (ASCII) файлам.
Пустой файл «определяется» как 8-битный (ANSI), поэтому опция никогда не применяется к пустым файлам.
UniMode um = UnicodeConvertor.getEncoding(); if (um == uni7Bit) { if (ndds._openAnsiAsUtf8) { um = uniCookie; } else { um = uni8Bit; } }
UnicodeConvertor.getEncoding()
Всегда возвращается, uni8Bit
если файл пуст.
Я предлагаю вам сообщить об этом как об ошибке.
Также не существует какой-либо опции командной строки для принудительного использования другой кодировки:
http://docs.notepad-plus-plus.org/index.php/Command_Line_Switches