Преобразование 2000 текстовых файлов в разных подкаталогах в кодировку UTF-8 (и замена) - PullRequest
0 голосов
/ 28 декабря 2018

Как преобразовать множество текстовых файлов, которые в основном сохраняются в CP1252, в UTF-8 без потери польских символов в Windows?Есть ли способ сделать это в командной строке Windows и пройти через все из них?Относительный путь к этим текстовым файлам всегда равен

/*/*/*.txt

, если это имеет значение.Спасибо

1 Ответ

0 голосов
/ 30 декабря 2018

Если файлы закодированы с помощью кодовой страницы 1252, то могут присутствовать польские символы, которые не могут быть представлены.

Кодовая страница 1250, кодовая точка 0x9C - это ЛАТИНСКАЯ МАЛЕНЬКАЯ БУКВА S С ОСТРОЙ

Кодовая страница 1252, кодовая точка0x9C - это небольшая лигатура OE

. Создайте файл p3.txt, содержащий 0x9C.

$windows1250 = [System.Text.Encoding]::GetEncoding('windows-1250')
$windows1252 = [System.Text.Encoding]::GetEncoding('windows-1252')

$path = 'C:/src/t/cpc/p3.txt'

$text = [System.Io.File]::ReadAllText($path, $windows1252)
$text

$text = [System.Io.File]::ReadAllText($path, $windows1250)
$text

Вывод:

C:>.\t.ps1
œ
ś

См. Также Исходная кодовая страница Get-Content?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...