2014-02-11 95 views
0

我似乎無法在任何地方找到它,但大量的人必須這樣做。在Android上將對象數組轉換爲JSON字符串

我有一個對象數組,我想要轉換爲JSON字符串併發布到REST URL。這是我到目前爲止有:

if(history==null||history.length == 0){ 
     return new String[0]; 
    } 

    JSONArray array = new JSONArray(); 
    for(DeviceHistory connectHistory:history){ 
     array.put(connectHistory); 
    } 

    JSONObject response = jsonClient.remoteCall(SERVICE_NAME, array.toString()); 

的問題是,我得到[「[email protected]」,「[email protected]」,」 [email protected]「,」[email protected]「]從array.toString()。我究竟做錯了什麼?

回答

2

因爲這是Object.toString()的結果。你可能也想嘗試:

https://code.google.com/p/google-gson/

該庫允許對象轉換成JSON和背部。

+0

你錯了,爲什麼會發生,但我最終使用Gson庫來解決它。 – Thom

+0

通過在這裏強制轉換,我的意思是Object.toString() – nikis

+0

OIC的結果。感謝您的幫助。 – Thom

2

您的問題是,您沒有將您的對象作爲字符串傳遞,因此您在JSON中編寫的內容是對您的對象的引用。

如果可以或只是使用它,您應該在該類中實現您的toString()方法。但是,如果你不能,你需要一個輔助方法來實現它。

相關問題