使用fastjson包。
代码:
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import com.alibaba.fastjson.JSON;
class ClassA {
public String no;
public String text;
public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}
public class texttojson {
public static void main(String[] args) throws IOException {
InputStreamReader ins = new InputStreamReader(new FileInputStream("C:\\zh-cn.txt"));
BufferedReader br = new BufferedReader(ins);
//存放bean对象
List<ClassA> tlist = new ArrayList<ClassA>();
//读取txt
String line = null;
List<String> list = new ArrayList<String>();
while((line = br.readLine()) != null) {
list.add(line);
}
br.close();
//txt的每一行相当于一条数据,split按空格作分隔符进行拆分。\\s+是正则表达式。
for (String str : list) {
String[] arrStr = str.split("\t");
ClassA classA = new ClassA();
classA.setNo(arrStr[0]);
classA.setText(arrStr[1]);
tlist.add(classA);
}
//JSON.toJSONString()方法:将对象数组(JSON格式的字符串也可以)转换成JSON数据。
String json = JSON.toJSONString(tlist);
System.out.println(json);
//创建新文件
File txtToJson = new File("C:\\zh-cn.json");
txtToJson.createNewFile();
BufferedWriter out = new BufferedWriter(new FileWriter(txtToJson));
out.write(json);
out.flush(); // 把缓存区内容压入文件
out.close(); // 最后记得关闭文件
}
}