读取本地json文件解析出错
研石少年 2017-08-25 11:11:39 这是源代码
File file = new File(fileName);
System.out.println(file);
if( !file.exists() ){
System.out.println("读入的路径不对!");
}
FileReader fileReader = new FileReader(file);
System.out.println(fileReader);
// 读取原始json文件
BufferedReader br = new BufferedReader(fileReader);
System.out.println(br);
// 输出新的json文件
String s = null, ws = null;
while ((s=br.readLine())!= null) {
String sa=new String(s.getBytes("UTF-8"),"UTF-8");
System.out.println(sa);
try {
// 创建一个包含原始json串的json对象
JSONObject dataJson = new JSONObject(sa);
// 找到data json数组
JSONArray features = dataJson.getJSONArray("data");
for (int i = 0; i < features.length(); i++) {
// 获取data数组的第i个json对象
JSONObject info = features.getJSONObject(i);
// 读取data对象里的createDate字段值
// String name = info.getString("createDate");
// 删除createDate字段
info.remove("createDate");
// 添加createDate字段
info.put("createDate", list.get(i));
}
ws = dataJson.toString();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("fuck!为什么解析错误!");
}
}
String strPath="C:\\Users\\admin\\Desktop\\tus\\woyouportalweb\\page\\mohefenxi\\tourist_nearly7.json";
strPath=strPath.replaceAll("\\\\", "/");
//输径出路
String bwfileName = strPath;
File bwfile = new File(bwfileName);
FileWriter fileWriter =new FileWriter(bwfile);
if( !bwfile.exists() ){
System.out.println("输出的路径不对!");
}
// 输出新的json文件
BufferedWriter bw = new BufferedWriter(fileWriter);
bw.write(ws);
bw.flush();
br.close();
bw.close();
fileWriter.close();
fileReader.close();
这是错误
{"retCode":0,"data":[{"id":451,"number":4287,"name":"涓夋竻灞?,"income":1178925.0,"createDate":"2017-06-18"},{"id":452,"number":4762,"name":"涓夋竻灞?,"income":1309550.0,"createDate":"2017-06-19"},{"id":453,"number":4334,"name":"涓夋竻灞?,"income":1191850.0,"createDate":"2017-07-20"},{"id":454,"number":8821,"name":"涓夋竻灞?,"income":2425775.0,"createDate":"2017-07-21"},{"id":455,"number":6203,"name":"涓夋竻灞?,"income":1705825.0,"createDate":"2017-07-22"},{"id":456,"number":4970,"name":"涓夋竻灞?,"income":1366750.0,"createDate":"2017-07-23"},{"id":457,"number":5495,"name":"涓夋竻灞?,"income":1511125.0,"createDate":"2017-07-24"}]}
org.json.JSONException: Expected a ',' or '}' at character 61
at org.json.JSONTokener.syntaxError(JSONTokener.java:412)
at org.json.JSONObject.<init>(JSONObject.java:225)
at org.json.JSONTokener.nextValue(JSONTokener.java:346)
at org.json.JSONArray.<init>(JSONArray.java:127)
at org.json.JSONTokener.nextValue(JSONTokener.java:350)
at org.json.JSONObject.<init>(JSONObject.java:208)
at org.json.JSONObject.<init>(JSONObject.java:422)
at cn.cucsi.agri.collector.worktask.MoHeJsonConvert.Json(MoHeJsonConvert.java:126)
at cn.cucsi.agri.collector.worktask.MoHeJsonConvert.run(MoHeJsonConvert.java:43)
java.lang.NullPointerException
at java.io.Writer.write(Writer.java:157)
at cn.cucsi.agri.collector.worktask.MoHeJsonConvert.Json(MoHeJsonConvert.java:162)
at cn.cucsi.agri.collector.worktask.MoHeJsonConvert.run(MoHeJsonConvert.java:43)