makamaka
@maka2_donzoko
@punytan 両者の違いですが、asciiは他のクライアントにデータを送る際に、latin1はバイナリデータを保存するときなどに用います。http://www.donzoko.net/cgi-bin/tdiary/20080329.html#p01
2010-04-18 17:02:23
ヾ(o゜ω゜o)ノ゛''''プニプニ!
@punytan
@maka2_donzoko なるほど。asciiはISO-2022-JPなどの7-bitのコードで扱われる可能性のある場合に、utf8は8-bitクリーンなことが明確なときに、latin1はバイナリデータ保存するときに、それぞれ使い分けるという解釈で良いでしょうか?
2010-04-18 18:35:04
makamaka
@maka2_donzoko
@punytan latin1についてはそれでokです。asciiは8-bitクリーンでない環境、通信経路にデータを送る時に、そしてutf8はこれらと独立で、入出力データがutf-8な文字列であることをJSON(::XS)に教えるものです。
2010-04-18 20:40:12
ヾ(o゜ω゜o)ノ゛''''プニプニ!
@punytan
@maka2_donzoko なるほど。ということは、Twitter APIのようにJSONを返すAPIを書くときは、JSON->new->utf8->encode()よりもJSON->new->utf8->ascii->encode()の方が適切ということでしょうか?
2010-04-18 20:45:19
makamaka
@maka2_donzoko
@punytan はい、ケースバイケースですが本当にどんな環境でデータが利用されるかわからないなら ->utf8->ascii->encode()でよいです。。
2010-04-18 20:52:26
ヾ(o゜ω゜o)ノ゛''''プニプニ!
@punytan
@maka2_donzoko asciiは重要だったんですね。それぞれの違いがわかりました。ありがとうございます
2010-04-18 21:14:27