私のシステムはSUSE Linux Enterprise Server 11です。
「iconv」を使用してデータをutf-8形式からisoに変換しようとしています
$>file test.utf8
test.utf8: UTF-8 Unicode text, with very long lines
$>
$>file -i test.utf8
test.utf8: text/plain charset=utf-8
$>
$>iconv -f UTF-8 -t ISO-8859-1 test.utf8 > test.iso
iconv: test.utf8:20:105: cannot convert
これを機知に助けてもらえますか?ありがとう。
入力ファイルには、ラテン1には存在しない文字が含まれています。-c
オプションをスキップする:
iconv -c -futf8 -tl1 test.utf8 > test.iso
場合によっては、-cと// TRANSLITの両方を使用することが最適な場合があります。
$ cat rodriguez
Rodrı́guez
$ file rodriguez
rodriguez: UTF-8 Unicode text
$ iconv --unicode-subst="<U+%04X>" -f UTF-8 -t ISO-8859-1 rodriguez
Rodr<U+0131><U+0301>guez
$ iconv -f UTF-8 -t ISO-8859-1 rodriguez
Rodr
iconv: rodriguez:1:4: cannot convert
$ iconv -f UTF-8 -t ISO-8859-1//TRANSLIT rodriguez
Rodri
iconv: rodriguez:1:5: cannot convert
$ iconv -c -f UTF-8 -t ISO-8859-1 rodriguez
Rodrguez
$ iconv -c -f UTF-8 -t ISO-8859-1//TRANSLIT rodriguez
Rodriguez
使用する //TRANSLIT
パラメータとダミー文字が配置されます。
iconv -f UTF-8 -t ISO-8859-1//TRANSLIT test.utf8 > test.iso