txt文件转json格式 java

package cn.evun.gehr.bees.blue.controller;

import java.io.*;
import java.util.ArrayList;
import java.util.List;
import com.alibaba.fastjson.JSON;
import lombok.Data;

@Data
class ClassA {
    public String userId;
    public String content;
}

public class texttojson {
    public static void main(String[] args) throws IOException {
        InputStreamReader ins = new InputStreamReader(new FileInputStream("D:\\2.txt"));
        BufferedReader br = new BufferedReader(ins);
        //存放bean对象ileInputStream("C:\\zh-cn.txt"));
        List tlist = new ArrayList();

        //读取txt
        String line = null;
        List list = new ArrayList();
        while((line = br.readLine()) != null) {
            list.add(line);
        }
        br.close();

        //txt的每一行相当于一条数据,split按空格作分隔符进行拆分。\\s+是正则表达式。
        ClassA classA;
        for (String str : list) {
             classA = new ClassA();
            classA.setUserId(str.substring(0,7));
            classA.setContent(str.substring(8));
            tlist.add(classA);
        }
        //JSON.toJSONString()方法:将对象数组(JSON格式的字符串也可以)转换成JSON数据。
        String json = JSON.toJSONString(tlist);
        //创建新文件
        File txtToJson = new File("D:\\json2");
        txtToJson.createNewFile();
        BufferedWriter out = new BufferedWriter(new FileWriter(txtToJson));
        out.write(json);
        out.flush(); // 把缓存区内容压入文件
        out.close(); // 最后记得关闭文件
        System.out.println("ok");
    }
}

解析txt文件,把数据封装到集合,然后根据分割符把集合中的数据对应上实体字段,然后导出json文件

你可能感兴趣的:(大数据)