2013-06-30 62 views
0

我在php文件中創建了一個JSON字符串。然後我使用json_encode($jsonStr)來編碼字符串。由PHP文件編碼的Android Decode JSON

$jsonStr = 
      "{ 
       \"statusCode\": 0, 
       \"errorMsg\": \"SUCCESS\", 
       \"id\": $id, 
       \"message\": ".json_encode($message).", 
       \"author\": \"$author\", 
       \"showAfter\": \"$date\" 
      }"; 

我在java(Android)中進行網絡調用以獲取此字符串。我的下一步是解碼字符串,但是這似乎不太好。

這裏是什麼,我想在我的Android代碼解碼樣本:

{\n\t\t\t\t\"statusCode\": 0,\n\t\t\t\t\"errorMsg\": \"SUCCESS\",\n\t\t\t\t\"id\": 1,\n\t\t\t\t\"message\": \"This is a message.\",\n\t\t\t\t\"author\": \"Anonymous\",\n\t\t\t\t\"showAfter\": \"2013-06-18 01:19:49\"\n\t\t\t}

是的,它是充滿了編碼換行和這樣的。我認爲可能是這個問題,所以我把這些問題拿出來了,但是我仍然有問題,所以我猜測肯定會有更大的事情發生。 我知道這是有效的JSON,因爲我可以解碼它並在基於JavaScript的網站中使用它。

我該如何在Android/Java上做到這一點?

+0

那不是有效的JSON ...並向我們展示您的完整PHP文件。 $ jsonStr的內容是什麼,你分配了什麼?如何傳輸json字符串等。 – DaGardner

+0

我知道它是無效的,但在編碼/解碼之前是這樣。一秒鐘我會發布更多詳細信息 – Sababado

回答

3

您的原始JSON字符串(您在第一個片段中顯示的字符串)看起來已經是有效的JSON。你不能編碼它。對它進行編碼會導致它無效JSON,將每個標籤轉換爲\ t,並將每一個新行轉換爲\ n。

仔細閱讀json_encode的文檔。

+0

謝謝你的答案。我正在使用json_encode來處理我的web應用程序,但是我想我的更大的問題是我如何在那裏使用它。再次感謝。 – Sababado