2011-09-06 39 views
6

スペースにJson文字列オブジェクトがあるときは、次のエラーが発生します。Android:スペースを含むJson文字列で "Unterminated object at"例外が発生する

のJava:

String jString = getResources().getString(R.string.event); 
JSONObject object = new JSONObject(jString); 

JSON:

<resources> 
    <string name="event"> 
     {"Array":[{"Name":"One"},{"Name":"Two"},{"Name":"Three"}]} 
    </string> 
</resources> 
:これはすべての問題を持っていない

09-06 22:35:08.214: WARN/System.err(1079): org.json.JSONException: Unterminated object at character 21 of {Array:[{Name:One two three},{Name:Two},{Name:Three}]} 

<resources> 
    <string name="event"> 
     {"Array":[{"Name":"One two three"},{"Name":"Two"},{"Name":"Three"}]} 
    </string> 
</resources> 

私は、次のメッセージを取得しています3210

私は間違った言葉を引用していますか?

EDIT:自分の投稿を読んで、エラーメッセージに文字列オブジェクトの値を引用符で囲まないことに気付きました。だから、私はXML文字列の "to"に変更し、うまくいきました。どのようにそれを持ってどのような引用符を削除しない任意のアイデア?

+0

スペースを削除してアレイ名を1回チェックしてください – Harsha

答えて

7

自分の投稿を読んでいるうちに、エラーメッセージに文字列オブジェクトの値が引用符で囲まれていないことがわかりました。だから、私はXML文字列の "to"に変更し、うまくいきました。

1

CDATAブロックでラッピングしてみてください。これにより混乱を避けることができます。

<resources> 
    <string name="event"><![CDATA[ 
     {"Array":[{"Name":"One two three"},{"Name":"Two"},{"Name":"Three"}]} 
    ]]></string> 
</resources> 
+1

いいえ、動作しませんでした。 –

+0

うまくいきませんでした。読んだ後に引用符はありません –

関連する問題