JSONObject.toString()在2.2中给出与2.1(.Net日期格式)不同的结果

时间:2010-11-26 00:14:13

标签: android json serialization android-2.2-froyo android-2.1-eclair

在Android 2.1中这个

JSONObject o = new JSONObject();
o.put("MyDate", "/Date(1289334937639)/");
Log.d(TAG, o.toString());

产生

{"MyDate":"/Date(1289334937639)/"}

但在2.2中会产生

{"MyDate":"\/Date(1289334937639)\/"}

我正在与.Net网络服务交谈,因此2.2版本可以正常使用。如何在不打破2.2的情况下让2.1生成相同的东西?

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

http://www.json.org/java/获取最新版本的JSON,并将其集成到您的代码中。你只需要更改你的输入。

答案 1 :(得分:0)

我最终得到了以下内容:

if (Build.VERSION.SDK_INT == 7) {
    params = params.replaceAll("/", "\\\\/");
}

其中params是已经转换为字符串的json。丑陋,但它确实有效。