我用字符流,向一个TXT文本存入了集合里面的数据,怎么实现对文本中数据的增删减改
4条回答 默认 最新
- 阿正很牛 2023-06-02 14:15关注
使用字符流读取文本文件中的数据,将其转换为集合对象,然后对集合进行增删减改操作,最后再将修改后的集合写回到文本文件中即可。
具体实现步骤如下:
- 使用字符流读取文本文件中的数据,将其转换为集合对象。可以使用
BufferedReader
类读取文本文件中的数据,并使用Gson
库将读取到的JSON字符串转换为集合对象。
BufferedReader reader = new BufferedReader(new FileReader("data.txt")); List<Data> dataList = new Gson().fromJson(reader, new TypeToken<List<Data>>(){}.getType());
- 对集合进行增删减改操作。根据需求对集合进行增删减改操作,例如:
// 添加数据 dataList.add(new Data("new data")); // 删除数据 dataList.remove(0); // 修改数据 dataList.get(0).setName("modified data");
- 将修改后的集合写回到文本文件中。可以使用
BufferedWriter
类将集合对象转换为JSON字符串,并写入到文本文件中。
BufferedWriter writer = new BufferedWriter(new FileWriter("data.txt")); writer.write(new Gson().toJson(dataList)); writer.close();
完整代码示例:
import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import java.io.*; import java.util.List; public class Main { public static void main(String[] args) throws IOException { // 读取数据 BufferedReader reader = new BufferedReader(new FileReader("data.txt")); List<Data> dataList = new Gson().fromJson(reader, new TypeToken<List<Data>>(){}.getType()); reader.close(); // 对数据进行增删减改操作 dataList.add(new Data("new data")); dataList.remove(0); dataList.get(0).setName("modified data"); // 写入数据 BufferedWriter writer = new BufferedWriter(new FileWriter("data.txt")); writer.write(new Gson().toJson(dataList)); writer.close(); } } class Data { private String name; public Data(String name) { this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 - 使用字符流读取文本文件中的数据,将其转换为集合对象。可以使用
悬赏问题
- ¥15 如何构建全国统一的物流管理平台?
- ¥100 ijkplayer使用AndroidStudio/CMake编译,如何支持 rtsp 直播流?
- ¥20 和学习数据的传参方式,选择正确的传参方式有关
- ¥15 这是网络安全里面的poem code
- ¥15 用js遍历数据并对非空元素添加css样式
- ¥15 使用autodl云训练,希望有直接运行的代码(关键词-数据集)
- ¥50 python写segy数据出错
- ¥20 关于线性结构的问题:希望能从头到尾完整地帮我改一下,困扰我很久了
- ¥30 3D多模态医疗数据集-视觉问答
- ¥20 设计一个二极管稳压值检测电路