0

URLを呼び出してその内容をプロンプトメッセージに表示するJSON関数があります。関数は機能します。このURLでテストしました: http://date.jsontest.com/

しかし、私はこのコンテンツを含む URL を作成する必要があります: // これはクラスの Java ファイルです

reponse_tex="{ id:" + p_id + ",Categorie: "+ p_demandAide.getP_categorie()+ ",Type: " +p_demandAide.getP_type() +",Message: " +p_demandAide.getP_message()+",Reponse: " +p_demandAide.getP_response() + " }";

私のクラスは機能し、ブラウザにコンテンツが表示されますが、最初の例のURLと同じようにjsonが理解できるようにフォーマットで記述する必要があることはわかっています...しかし、(""を追加するのは非常に困難です) Java は、その構文でそれを許可していません。

4

2 に答える 2

0

したがって、引用符をエスケープしようとしているようです。だからこうしろ

reponse_tex="{\"id\":\"" + p_id + "\",\"Categorie\": \""+ 
p_demandAide.getP_categorie()+ "\",\"Type\": \"" +p_demandAide.getP_type() 
+"\",\"Message\": \"" +p_demandAide.getP_message()+"\",\"Reponse\": \"" 
+p_demandAide.getP_response() + "\" }";

アップデート

キーの周りの引用符もエスケープしました。\"id\" ... 引用 ID をエスケープしないと、違いに気付きます。カテゴリは文字列の一部ではなくなります

reponse_tex="{"id":\"" + p_id + "\","Categorie": \""+ 
p_demandAide.getP_categorie()+ "\","Type\": "" +p_demandAide.getP_type() 
+"\","Message": \"" +p_demandAide.getP_message()+"\","Reponse": \"" 
+p_demandAide.getP_response() + "\" }";
于 2013-08-21T17:12:48.800 に答える
0

JSON の構文は非常に明確です。http://www.json.org/を参照してください。文字列値キー名の 両方を二重引用符で囲む必要があります。{"like": "this", "see?": true}(文字列値に二重引用符が必要な場合は、バックスラッシュでエスケープします: {"this": "has \"literal\" quotes"})

Java で二重引用符を含む文字列リテラルを記述する場合は、バックスラッシュでエスケープします"like \"this\", see?"

于 2013-08-21T17:20:56.490 に答える