2011-09-06 13 views
6

देता है जब भी मेरे पास एक स्पेस के साथ एक जेसन स्ट्रिंग ऑब्जेक्ट होता है तो मुझे निम्न त्रुटि मिलती है।एंड्रॉइड: रिक्त स्थान के साथ जेसन स्ट्रिंग "अपर्याप्त ऑब्जेक्ट" अपवाद

जावा:

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> 

मैं निम्न संदेश प्राप्त कर रहा हूँ

क्या मैं कुछ गलत उद्धृत कर रहा हूं?

संपादित करें: अपनी खुद की पोस्ट के माध्यम से पढ़ते हुए मैंने देखा कि त्रुटि संदेश में स्ट्रिंग ऑब्जेक्ट मानों के आसपास कोई उद्धरण नहीं है। तो मैंने एक्सएमएल स्ट्रिंग में "टू \" बदल दिया और यह ठीक काम किया। कोई विचार यह है कि इसे किसी भी उद्धरण को कैसे हटाया जाए?

+0

रिक्त स्थान हटाएं और सरणी नाम एक बार जांचें – Harsha

उत्तर

7

अपनी खुद की पोस्ट के माध्यम से पढ़ते हुए मैंने देखा कि त्रुटि संदेश में स्ट्रिंग ऑब्जेक्ट मानों के आसपास कोई उद्धरण नहीं है। तो मैंने एक्सएमएल स्ट्रिंग में "टू \" बदल दिया और यह ठीक काम किया।

1

इसे सीडीएटीए ब्लॉक में लपेटने का प्रयास करें। यह किसी भी भ्रम को रोकना चाहिए।

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

नहीं, यह काम नहीं करता है। –

+0

काम नहीं किया। पढ़ने के बाद कोई उद्धरण नहीं –

संबंधित मुद्दे