Существует ли для Windows инструмент (командная строка, графический интерфейс, скрипт и т. Д.), Который может создать каталог и идентифицировать все файлы, закодированные как UTF-16?
Существует ли для Windows инструмент (командная строка, графический интерфейс, скрипт и т. Д.), Который может создать каталог и идентифицировать все файлы, закодированные как UTF-16?
Ответы:
Этот инструмент позволяет определить тип кодировки файла с учетом стандартной информации, такой как шаблон поиска и путь к файлу:
File Encoding Checker - это инструмент с графическим интерфейсом, который позволяет проверять кодировку текста одного или нескольких файлов. Инструмент может отображать кодировку для всех выбранных файлов или только для файлов, которые не имеют указанных кодировок.
Я не использовал это сам, так что вы можете проверить это.
Медленным способом было бы взять любую утилиту преобразования и запустить ее для всех файлов в каталоге. Эти файлы, успешно преобразованные из UTF-16 в другой формат, скорее всего, вам нужны. Для этой задачи вы можете выбрать доступный инструмент, такой как Конвертер набора символов .
Или вы можете написать такой инструмент, используя фрагмент кода C ++ из этой статьи. Преобразование между Unicode UTF-16 и UTF-8 в C ++ / Win32 . Пользовательский инструмент может быть оптимизирован, чтобы избавиться от первой ошибки преобразования и не сохранять преобразованный буфер в файл.
Для файлов UTF-16 с спецификацией - команда PowerShell
gci . -Include *.txt -Recurse | `
% { $c = gc $_.FullName -TotalCount 2 -Encoding Byte; `
if ( $c.Length -gt 0 -and `
(($c[0] -eq 255 -and $c[1] -eq 254) -or `
($c[0] -eq 254 -and $c[1] -eq 255)) `
) {$_.FullName} `
}
0
хорошим началом.