JSON.pm

0
ヾ(o゜ω゜o)ノ゛''''プニプニ! @punytan

JSON.pmのlatin1|asciiの使い道がいまいちよくわからない

2010-04-18 16:28:48
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