在Android系统中进行JSON解析时碰到以下问题:
org.json.JSONException: Value of type java.lang.String cannot be converted to JSONObject
使用Notepad++设置文件编码时,采用utf8编码,出现上面的问题。原因是文件中包含了utf8 bom头信息。采用utf8无BOM格式编码的形式即可。
具体设置,查看下图:
补充: bom格式处理
代码如下 | 复制代码 |
String st="utf-8的bom格式字符串内容"; byte[] bytes = st.getBytes("utf-8"); byte[] strs = new byte[bytes.length - 3];//去掉该内容的bom标示 int j = 0; if (bytes[0] == -17 && bytes[1] == -69 && bytes[2] == -65) {//bom文件格式头字节 for (int i = 3; i < bytes.length; i++) { strs[j] = bytes[i]; j++; } |
原因这个也是编码问题与php中的bom 格式编码也是一样一样的呀。
时间: 2024-10-27 15:30:14