1

次のようなJavaの文字列があります。

String str = "Hello this is #David's first comment #excited"

この文字列を json オブジェクトに変換したいのですが、以下を使用するとエラーがスローされます。

JSONObject json = new JSONObject(str);

「#」記号が原因でエラーがスローされることがわかりました。
手間をかけずに文字列をjsonに変換する他の方法はありますか?

4

1 に答える 1

4

問題は「#」記号ではありません。文字列を既に JSON であるかのように解析しようとしているということです。おそらく次のようなものが必要です。

JSONObject json = new JSONObject();
json.put("firstString", str);
String jsonString = json.toString();

または、もっと簡単に (引用符で囲まれた JSON 文字列だけが必要な場合:

String jsonString = JSONObject.valueToString(str);
于 2012-08-03T03:10:03.643 に答える