android - Json.org Android 添加奇怪的字符

标签 android org.json

我有一个使用 Android 编写的客户端/服务器应用程序,我正在使用与 android bundle 在一起的标准 org.json 包类来进行解析和创建。

例如,服务器端在生成的 json 字符串中间出现了奇怪的字符(不是完整的,因为它很大):

{!lo":"es_MX","id":2791884,"os":"8"}

如您所见,(!) 感叹号随机出现,而不是双引号。我还得到其他随机字符出现在字符串中间。这很奇怪。

这是创建 JSON 对象的代码...

JSONObject jsonObject = new JSONObject();
jsonObject.put("key", someValue);

这是发送的代码..

HttpPost type = new HttpPost(<server url here>);
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("v", jsonObject.toString()));
type.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
httpClient.execute(type); // This is a DefaultHttpClient

我说的是随机的,但是这个确切位置的感叹号在很多错误中都是一致的,但不是每次都是。大约有 5 条消息出现此错误,每天数以万计。通常不是插入到 json 中的值的内容,而是定义消息结构的字符(例如上面的引号字符),这表明这不是字符集问题。

有没有人遇到过这个?

最佳答案

您似乎正在以其他格式编写字符串,并且在接收到另一种格式的文本解码时 就像 iso 到 utf。

关于android - Json.org Android 添加奇怪的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9009777/

相关文章:

Android - 自定义 AutoCompleteTextView 布局

android - 如何从 google fit 读取消耗卡路里数和剩余卡路里数

java - 在 Eclipse 中使用 org.json.JSONObject

Java JSONArray JSONObject ["NI"] 未找到

java - 反过来使用 Activity 之间的 Intent - Android

java - 添加到 stringbuffer 逗号

android - 是否可以确定键盘振动是否打开?

java - 从JSONObject获取日期

java - JSONObject 返回空 :false

java - 为什么这个 JSONObject 不是 JSONArray?