Перекодировка текстовых файлов
uconv.exe v1.2.1

Эта программа была написана для моих HTA-скриптов и предназначена для перекодировки данных из одной кодировки в другую.

Формат вызова:   uconv.exe   [ -cp1 [ -cp2 ] ]   file1   [ file2 | -r ]   [ -O LogFile ]

file1 - файл для чтения данных.
cp1 - Кодировка входных данных (По умолчанию TEST)
file2 - файл для записи данных. Если в качестве выходного файла указан ключ -r, то данные записывются в file1
cp2 - Кодировка выходных данных (По умолчанию ANSI)
-O logfile - информация о выполнении программы записывается в logfile.     Символ «пробел» после -O можно опустить.
-o logfile - информация о выполнении программы ДОзаписывается в logfileСимвол «пробел» после -o можно опустить.


Кодовые страницы (кодировки), с которыми работает программа
ОбозначениеОписание
ANSI windows ANSI. Кодовая страница Windows на компьютере где выполняется программа.
Допускается другое обозначение: A
UTF-8Unicode UTF-8 (c cигнатурой BOM, т.е. в начале выходных данных добавляетя три байта: \xEF \xBB \xBF.). Допускаются другие обозначения: UTF8,   U8,   U8+
UTF-8nUnicode UTF-8 без сигнатуры BOM. Допускаются другие обозначения: UTF8n,   U8n,   U8-
Для входных данных UTF-8 и UTF-8n не различаются
UTF-16LEUnicode UTF-16LE с сигнатурой (в начале выходных данных добавляетя два байта: \xFF \xFE).
Допускаются другие обозначения: UTF16,   U16,   U16+
UTF-16LEnUnicode UTF-16LE без сигнатуры.
Допускаются другие обозначения: UTF16n,   U16n,   U16-
Для входных данных UTF-16LE и UTF-16LEn не различаются
UTF-16BEUnicode UTF-16BE с сигнатурой (в начале выходных данных добавляетя два байта: \xFE \xFF).
Допускаются другие обозначения: UTF16BE,   U16BE,   U16BE+
UTF-16BEnUnicode UTF-16BE без сигнатуры.
Допускаются другие обозначения: UTF16BEn,   U16BEn,   U16BE-
Для входных данных UTF-16BE и UTF-16BEn не различаются
UTF-32LEUnicode UTF-32LE с сигнатурой (в начале выходных данных добавляетя 4 байта: \xFF \xFE \x00 \x00).
Допускаются другие обозначения: UTF32,   U32,   U32+
UTF-32LEnUnicode UTF-32LE без сигнатуры.
Допускаются другие обозначения: UTF32n,   U32n,   U32-
Для входных данных UTF-32LE и UTF-32LEn не различаются
UTF-32BEUnicode UTF-32BE с сигнатурой (в начале выходных данных добавляетя два байта: \x00 \x00 \xFE \xFF).
Допускаются другие обозначения: UTF32BE,   U32BE,   U32BE+
UTF-32BEnUnicode UTF-32BE без сигнатуры.
Допускаются другие обозначения: UTF32BEn,   U32BEn,   U32BE-
Для входных данных UTF-32BE и UTF-32BEn не различаются
TESTИспользуется только с входными данными для автоматического определения кодировки: UTF-16,   UTF-8,   UTF-32  или   ANSI.
Если TEST указан в качестве кодировки выходных данных, принимается ANSI.
Допускается другие обозначения: T,   TST
OEMOEM code page (DOS)
CP866OEM Russian; Cyrillic (DOS)
IBM437OEM United States
MACMacintosh code page
KOI8RRussian (KOI8-R); Cyrillic (KOI8-R)
KOI8UUkrainian (KOI8-U); Cyrillic (KOI8-U)
A1250ANSI Central European; Central European (Windows)
A1251ANSI Cyrillic; Cyrillic (Windows)
A1252ANSI Latin 1; Western European (Windows)
A1253ANSI Greek; Greek (Windows)
A1254ANSI Turkish; Turkish (Windows)
A1255ANSI Hebrew; Hebrew (Windows)
A1256ANSI Arabic; Arabic (Windows)
A1257ANSI Baltic; Baltic (Windows)
A1258ANSI/OEM Vietnamese; Vietnamese (Windows)
ISO1ISO 8859-1 Latin 1; Western European (ISO)
ISO2ISO 8859-2 Central European; Central European (ISO)
ISO3ISO 8859-3 Latin 3
ISO4ISO 8859-4 Baltic
ISO5ISO 8859-5 Cyrillic
ISO6ISO 8859-6 Arabic
ISO7ISO 8859-7 Greek
ISO8ISO 8859-8 Hebrew; Hebrew (ISO-Visual)
ISO9ISO 8859-9 Turkish
ISO13ISO 8859-13 Estonian
ISO15ISO 8859-15 Latin 9


Примечания
  1. Ключи cp1, cp2 и r - регистронезависимые.
  2. Вместо символа «-» можно использовать символ «/».
  3. Параметры в командной строке могут распологаться в любом порядке, НО file1 не должкен находится после file2 (-r), а cp1 после cp2
  4. Если для входных данных указана кодировка TEST, a file2 и cp2 не указаны, код возврата программы равен:
    без BOM:
    Unicode UTF-8 - 1,   ANSI - 2,   Unicode UTF-16LE - 3   Unicode UTF-16BE - 4,   Unicode UTF-32LE - 5,   Unicode UTF-32BE - 6
    c BOM:
    Unicode UTF-8 - 11,   Unicode UTF-16LE - 13   Unicode UTF-16BE - 14,   Unicode UTF-32LE - 15,   Unicode UTF-32BE - 16
  5. Другие коды возвоата:
    •  0 - программа завершилась без ошибок;
    • 20 - неверно заданы параметры;
    • 21 - Ошибка во входном файле;
    • 22 - Ошибка в вЫходном файле;
    • 23 - Ошибка выделения памяти;
  6. Программа разработана в 2-х вариантах: x64 и x32-бит.

Пример 1:

uconv.exe   -tst  - a   parm_hd.txt   file.txt
Определить формат входных данных (UTF-32, UTF-16, UTF-8 или windows ANSI) в файле parm_hd.txt, перекодировать данные в формат windows ANSI и записать в файл file.txt

Пример 2:

uconv   -t   inform.dat   /r   -U8n   -ouc.log
Перекодировать файл inform.dat в формат UTF-8 без BOM. Информация выполнения программы будет добавляться в файл uc.log

Пример 3:

  for   %%i   in   (*.txt)   do   D:/Portable/iconv.exe   -test   -u8   "%%i"   "utf8/%%i"   -o conv.log
Через CMD перекодировать все файлы с расширением «txt» в текушем каталоге и положить перекодированные файлы в заранее созданную папку utf8. Предполагается, что программа uconv находится в директории D:\Portable.


Ещё программы от меня

  1. b64 - программа, которая позволяет кодировать (декодировать) файлы в формат Base64.
    Основные возможности программы B64:
    • Не требует установки (Portable)
    • Высокая скорость работы.
    • Язык интерфейса - русский, но можно заменить на любой.
    • Программа разработана в 2-х вариантах: x64 и x32-бит.
    • Два режима работы: Диалоговый и с командной строкой
  2. srcript2exe - программа, которая конвертирует скрипты (Batch (.bat,.cmd), HTA (.hta,.htm), JavaScript (.js), VBScript (.vbs), WSH (.wsh), WSF(.wsf), PowerShell (.psl), HTM (.html) и другие ) в самозапускающиеся приложения (.exe).
    Основные возможности программы Script2EXE:
    • Не требует установки (Portable)
    • Высокая скорость работы.
    • Удобный и простой интерфейс.
    • Защита содержимого скрипт-файлов от изменений другими пользователями.
    • Шифрование содержимого приложения (EXE-файла).
    • Язык интерфейса - русский, но можно заменить на любой.
    • Программа разработана в 2-х вариантах: x64 и x32-бит.
  3. Другие программы не оформлены должным образом

Удачи и всех благ Вам!
Программист на пенсии
2018