Android解码JSON由PHP文件编码

时间:2013-06-30 20:49:30

标签: java android json

我在php文件中创建了一个JSON字符串。然后我使用json_encode($jsonStr)对字符串进行编码。

$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上完成此操作?

1 个答案:

答案 0 :(得分:3)

您的原始JSON字符串(您在第一个代码段中显示的字符串)看起来已经是有效的JSON。你不能编码它。编码它是使JSON无效的原因,将每个标签转换为\ t,将每个新行转换为\ n。

仔细阅读json_encode的文档。