木曜日, 2月 28, 2008

Shift_JIS, windows3.1J とcp932の関係

世の中にいつもShift JIS、Shift JISを叫んでますが、今日iconvを使って、"\"を含んでいるShift JISファイルをUTF-8として、下のように変換しようとして、
iconv --from-code=UTF-8 --to-code=SJIS --widechar-subst=X TMP2.bat > TMP.bat
次のようなエラーが出てしまった。
This application has requested the Runtime to terminate it in an unusual way.Please contact the application's support team for more information.

なんとか、ファイルの中に、"\"を含んでいると、変換できません。次のように変更して
iconv --from-code=UTF-8 --to-code=CP932 --widechar-subst=X TMP2.bat > TMP.bat
ちゃんとエラーなしで、変換できました。やはりSJISとCP932の区別が大きいですね。

Proposed revision of Shift_JIS and Windows-31J

Shift_JIS, windows3.1J とcp932の関係
このなかに下のような記述があります。
新しいcharacter-sets 00-08-28 10:55でWindows-31JはMicroSoftのcp932と同じことを確認しました。Shift_JisはWindows-31JからNECとIBMの拡張部分を差し引いたものと思っていいわけですね。

0 件のコメント: