0
私はirbでUTF8コードポイントで文字列を表示していますが、実際の文字で表示することをお勧めします。たとえば、date de d\\u00e9part
をdate de départ
に変更するか、\\u4f4f\\u6240
を住所
に変更します。"date de d u u00e9part"を "date dedépart"に変換するには?
これらの文字列は、File.readlines("myfile.txt")
でファイルを読み取ることで構築されます。 file -I myfile.txt
はmyfile.txt: text/plain; charset=us-ascii
を返し、"date de d\\u00e9part".encoding"
は#<Encoding:UTF-8>
を返します。
実際には 'myfile.txt'に正しい文字列が含まれていますか?二重バックスラッシュと 'charset = us-ascii'は' \ u00e9' _literally_、つまり '' \ '、' 'u'、' 0'、 '0'、' e'、 '9'を含むことを示唆しています。 。 – Stefan
'myfile.txt'は正しい文字列を含んでいません。これはmongodbのダンプから来て、' \ '、' u'、 '0'、' 0'、 'e'、' 9' 。 – Florent2
ダンプがJSON形式であると思われます。もしそうなら、多分あなたはそれを読み、 "myfile.txt"の代わりに "myfile.json"のような名前のファイルを使うべきです。 –