У меня проблема при попытке пакетного преобразования кодировки некоторых файлов из ISO-8859-1 в UTF-8 с использованием iconv в сценарии powershell.
У меня есть этот bat-файл, который работает нормально:
for %%f in (*.txt) do (
echo %%f
C:\"Program Files"\GnuWin32\bin\iconv.exe -f iso-8859-1 -t utf-8 %%f > %%f.UTF_8_MSDOS
)
Мне нужно преобразовать все файлы в структуре каталогов, поэтому я запрограммировал этот другой сценарий, на этот раз с помощью powershell:
Get-ChildItem -Recurse -Include *.java |
ForEach-Object {
$inFileName = $_.DirectoryName + '\' + $_.name
$outFileName = $inFileName + "_UTF_8"
Write-Host Convirtiendo $inFileName -> $outFileName
C:\"Program Files"\GnuWin32\bin\iconv.exe -f iso-8859-1 -t utf-8 $inFileName > $outFileName
}
И с помощью этого получаются файлыпреобразован в UTF-16.Я понятия не имею, что я делаю неправильно.
Может ли кто-нибудь помочь мне с этим?Может быть, это какая-то проблема с кодировкой самого powershell?
Я использую W7 и WXP и LibIconv 1.9.2