あなたの習慣について教えてください!!

文字コードUTF-16、Little-Endian、改行コードCR/LF、BOMのデータを読み込み、
シフトJISに変換して処理するため、次のようにしたのですが、 中ほどのデータが消えてしまいます。
何か間違っていますか?
require 'nkf'
...
text = file_in.read
text_shiftjis = NKF.nkf('-sW16L',text)
 p text_shiftjis #確認用出力

A 回答 (1件)

正しく変換されています。


p text_shiftjis 
でなく
print text_shiftjis 
で確認してみてください。
(もっと正確には、text_shiftjis をファイルへ書き込んで、その結果をテキストエディタ及び16進数エディタで確認してください)
p text_shiftjisだと正しく表示されないようです。
当方、windows-7,ruby-1.93で確認済みです。

この回答への補足

回答ありがとうございます。
こちらの環境はXP、Ruby1.8.7+RDEです。

>print text_shiftjis 
>で確認してみてください。
>(もっと正確には、text_shiftjis をファイルへ書き込んで、その結果をテキストエディタ及び16進数エディタで確認してください)

さっそく確認してみます。

補足日時:2013/07/15 09:16
    • good
    • 0
この回答へのお礼

返事遅くなってすみません。
元データが壊れていたみたいです。
回答ありがとうございました。

お礼日時:2013/07/22 20:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!