• java对json文件的操作


    第一步:通过FileReader读取json文件
    第二步:使用BufferReader,先通过I/O读取一定大小的数据缓存到数组中,然后再从数组取出数据。
    第三步:用一个字符串把每次传来的数据处理后写到新的文件中。重复这个过程。

    注意事项:
    在json中,每一行就是一个json对象,需要用{}括起来,json对象键值对里面还可以保存jsonArray和jsonObject,json jar包里面包含键值对增加和删除的操作。

    import org.json.JSONException;
    import org.json.JSONObject;
    
    import java.io.*;
    
    
    /**
     * @author Mr.Xu
     * @version 1.0
     * @date 2018/5/7.
     */
    public class jsontest {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            // 读取原始json文件并进行操作和输出
            try {
                BufferedReader br = new BufferedReader(new FileReader(
                        "C:\Users\Administrator\Desktop\ParseData\test.json"));// 读取原始json文件
                BufferedWriter bw = new BufferedWriter(new FileWriter(
                        "C:\Users\Administrator\Desktop\ParseData\testresult.json"));// 输出新的json文件
                String s = null, ws = null;
                while ((s = br.readLine()) != null) {
                    System.out.println(s);
                    try {
                        JSONObject dataJson = new JSONObject(s);// 创建一个包含原始json串的json对象
                        ws = dataJson.toString();
                        System.out.println(dataJson.getJSONArray("people").getJSONObject(0).get("name"));
                    } catch (JSONException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }
    
                bw.write(ws);
                bw.flush();
                br.close();
                bw.close();
    
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    
        }
    
    }

     json测试

    test.json

    {"t1":"1","people":[{"name":"LSY","age":"23"},{"name":"XRC","age":"23"}]}

    小徐看世界,世界如此多娇: http://www.cnblogs.com/schoolbag/

  • 相关阅读:
    文件上传的核心点 一(59)
    ajax1—php(27)
    php—Smarty-缓存2(26)
    php—Smarty-缓存1(25)
    java—实现一个监听器HttpServletRequest的创建销毁、在线人数 (56)
    Linux—virtualbox系统安装(1)
    php—Smarty-2
    java—不同的用户登录以后可以看到不同的菜单(后台可以实现对用户菜单的管理) 1 (55)
    java—数据存储过程 (54)
    java—ThreadLocal模式与OSIV模式(53)
  • 原文地址:https://www.cnblogs.com/schoolbag/p/9008178.html
Copyright © 2020-2023  润新知