dポイントプレゼントキャンペーン実施中!

Javaでorg.json.simpleを使ってJSON形式のデータを出力しようとしています。
公開されているAPIなどをみると、日本語の部分は"\uxxxx"のように
エスケープされているかと思うのですが、
下記の方法ではそのまま日本語で"あいうえお"と表示されてしまいます。

import org.json.simple.JSONObject;

JSONObject obj = new JSONObject();
obj.put("name", "あいうえお");
System.out.print(obj.toString());

JSONで日本語を扱う場合は必ずエスケープしなくてはならないでしょうか?
この場合はどのようにしたらエスケープできるでしょうか?

A 回答 (1件)

>JSONで日本語を扱う場合は必ずエスケープしなくてはならないでしょうか?



>http://www.json.org/

しなければならないってことはないんじゃない?
したほうが、例えば、HTMLにくっついているjavascriptからそのデータ引用したときに、jsの符号化方式気にしないで使えるだろうから、使う側にとって便利ではあるだろうけど。

質問者さんのレベルなら、ソースをちゃんと見れば何で「そのまま出力する」挙動しているのか、どう直したらいいかわかるとおもう。
http://code.google.com/p/json-simple/source/brow …
http://code.google.com/p/json-simple/source/brow …
    • good
    • 0

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