2016-07-08 5 views
1

ヒンディー語(言語)でcsvファイルを書いていますが、解析すると結果が異なります。特殊文字(別の話し言葉)を含むcsvファイルを読む

たとえば、私は以下のcsvファイルを作成します。

1234444070;आज आप कैसे हैं??? 

私はopen(csv_aws_url).readを使用して同じファイルを読むとき。私は得る:

"1234444070;\xE0\xA4\x86\xE0\xA4\x9C \xE0\xA4\x86\xE0\xA4\xAA \xE0\xA4\x95\xE0\xA5\x88\xE0\xA4\xB8\xE0\xA5\x87 \xE0\xA4\xB9\xE0\xA5\x88\xE0\xA4\x82???\r\n" 

これは私が解析中に同じ内容を読むことが起こることができますか?

+0

あなたの 'open'の前に' puts'を入れてみてください。あなたが 'String#inspect'の出力を見ているようですが、これは同じデータの視覚的表現が異なっているだけです。 –

答えて

0
open(csv_aws_url).read.force_encoding('utf-8') 
1

は、ファイルが最も可能性の高い別のエンコーディングで保存されているopen(csv_aws_url, encoding: "utf-8").read

を試してみてください。

Ruby read CSV file as UTF-8 and/or convert ASCII-8Bit encoding to UTF-8が役立ちます。

+0

'open(csv_aws_url).read.force_encoding( 'utf-8')'がトリックをしました! –

関連する問題