java将第一行是表头,剩下的是数据的txt转成json
时间: 2024-05-10 22:17:28 浏览: 154
将数据库表转成Json格式
假设txt文件的格式如下:
```
name\tage\tscore
Tom\t18\t89
Jerry\t19\t95
```
其中`\t`表示Tab键分隔符。可以通过Java的IO流读取该txt文件,并将其转化为JSON格式。以下是一个示例代码:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSON;
public class Txt2Json {
public static void main(String[] args) throws Exception {
String filePath = "data.txt";
BufferedReader reader = new BufferedReader(new FileReader(filePath));
String[] headers = reader.readLine().split("\t");
List<Map<String, Object>> dataList = new ArrayList<>();
String line;
while ((line = reader.readLine()) != null) {
String[] values = line.split("\t");
Map<String, Object> data = new HashMap<>();
for (int i = 0; i < headers.length; i++) {
data.put(headers[i], values[i]);
}
dataList.add(data);
}
reader.close();
String jsonStr = JSON.toJSONString(dataList);
System.out.println(jsonStr);
}
}
```
该代码会将txt文件转化为一个JSON数组,每一行数据都被转化为一个JSON对象。示例代码的输出结果如下:
```json
[
{
"name": "Tom",
"age": "18",
"score": "89"
},
{
"name": "Jerry",
"age": "19",
"score": "95"
}
]
```
阅读全文