6 / 6 / 1
Регистрация: 28.07.2014
Сообщений: 49
|
|
1 | |
Как сохранить/перекодировать файл в UTF-8 из консоли?15.03.2015, 21:27. Показов 10667. Ответов 5
Метки нет (Все метки)
CMD путем перенаправления, может сохранять файл только в двух кодировках: ANSI(по умолчанию) и UNICODE (UCS-2 le)
например: systeminfo > systeminfo.log (В Ansi) cmd /U systeminfo > systeminfo.log (в UCS-2 le) Мне же нужно чтобы файл был в кодировке UTF-8. Отсюда вопрос, как можно стандартными средствами перекодировать с ANSI/UCS-2 в UTF-8?
0
|
15.03.2015, 21:27 | |
Ответы с готовыми решениями:
5
Перекодировать файл в UTF-8 Как програмно сохранить файл в utf-8? Как перекодировать адрес в utf-8 ? Как перекодировать utf 8 в ANSI |
6242 / 2117 / 334
Регистрация: 10.12.2013
Сообщений: 7,295
|
|
16.03.2015, 08:14 | 2 |
Перекодировка текста (сборник кодов для различных кодовых страниц)
PS: строго говоря, кодировка UCS-2( представлена в ISO 10646) - это не то же самое, что UTF-16; UCS-2 - это устаревшая терминология и относится к периоду принятия стандарта Unicode 1.1( 1991-1996). a термин UTF-16 относится к стандарту Unicode 2.0(июль 1996), когда были определены 'суррогатные пары'(https://msdn.microsoft.com/en-... s.85).aspx) ; Windows начал использовать UTF-16LE в качестве внутренней кодировки( с изменением API ), начиная где-то с 2000-го года, а до этого в нём вовсю цвeлa терминология( и соответственно API ) MBCS ( multi-byte character set ) UCS-2 всегда по умолчанию с тупым концом(BE), LE официально для ней определен не был. разница между UTF8, UTF-16 и UTF-32: UTF-8 - это последовательность от одного до четырёх 8-битных байт. ( ориентирована на internet ) UTF-16 - это последовательность от одной до двух 16-битных композиций. ( принята в Windows ) UTF-32 - это одна 32-битная композиция. ( используется в Unix ) Поэтому, возвращаясь к вопросу ТС: 1) термин ANSI - это расширенная(до 8 бит) таблица ASCII( 1960 год; 7бит ) скорее всего имелась в виду. 2) UCS-2 - это скорее всего UTF-16 имелась в виду
5
|
6 / 6 / 1
Регистрация: 28.07.2014
Сообщений: 49
|
|
16.03.2015, 09:51 [ТС] | 3 |
"2) UCS-2 - это скорее всего UTF-16 имелась в виду" - Может быть и так, спорить не буду )
Но когда я сохраняю файл посредством "cmd /U /Q /C script >script.out" и после открываю в notepad++ то вижу кодировку UCS-2 LE w/o BOM. В скрипте используется только две каманды wmic и echo А вообще спасибо за ссылку. Поразбираюсь.
0
|
6242 / 2117 / 334
Регистрация: 10.12.2013
Сообщений: 7,295
|
|
16.03.2015, 13:33 | 5 |
может конечно Notepad++ настолько крут, что различает* UCS-2 и UTF-16 ... проверю вечерком.
(*) не просто по признаку есть BOM - UTF-16, нет BOM - UCS-2, а залезая вглубь и проверяя слова по словарю
0
|
16.03.2015, 14:21 | 6 |
Я Вас умоляю. Notepad++ на данный момент тупой как пень.
В кодировках путается конкретно (особенно там, где касается 1251 или 866 открывать), да и с юникодом бывает не все гладко. а команда cmd /u как раз и записывает файл без BOM-а.
2
|
16.03.2015, 14:21 | |
16.03.2015, 14:21 | |
Помогаю со студенческими работами здесь
6
Как перекодировать данные из windows-1251 в UTF-8? PHP Storm и кодировка проекта, как перекодировать в UTF? Файл: Привести кодировку содержимого файла к кодировке консоли и сохранить результат как новый файл. Кодировкой (1251 и UTF-8) как перекодировать или что с ней сделать Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |