Java程序读写TXT文件示例
需积分: 12 194 浏览量
更新于2024-09-18
收藏 2KB TXT 举报
该代码示例展示了如何在Java中读取和写入TXT文本文件。程序首先创建一个名为`people.txt`的文件,并写入多行数据,每行包含姓名、性别、年龄和薪资。然后,它读取这个文件,将每一行的数据存储到一个ArrayList中,接着对数据进行处理,通过逗号分隔值(CSV)解析每一行,并将这些值分配给一个名为`Names`的实体类的对象属性。最后,程序计算并输出所有人的总薪资。
在这个Java程序中,有以下几个关键知识点:
1. **文件I/O操作**:
- 使用`FileWriter`类写入文本文件。`FileWriter`构造函数接收一个文件路径作为参数,然后可以调用`write()`方法向文件中写入内容。
- 使用`FileInputStream`打开一个文件,然后通过`BufferedReader`进行读取。`BufferedReader`提供`readLine()`方法,可以逐行读取文件内容。
2. **字符编码**:
- 文件读写时指定字符编码。在创建`InputStreamReader`时,使用`"GBK"`作为编码,确保正确处理中文字符。
3. **异常处理**:
- 使用`try-catch-finally`块来处理可能出现的异常,如`IOException`。在`finally`块中,确保所有的流(`inputStream`和`bufReader`)都被关闭,以释放系统资源。
4. **集合操作**:
- 使用`ArrayList`存储读取到的文件行数据,以及`Names`对象。`add()`方法用于向列表中添加元素。
- `List<Names>`类型的`alist`用于存储解析后的`Names`对象。
5. **字符串处理**:
- `split(",")`方法用于根据逗号将字符串分割成数组。这样可以方便地获取CSV数据的各个部分。
6. **数据转换**:
- `Integer.parseInt(sArray[3])`将字符串形式的数字转换为整型,以便于计算。
7. **实体类(Names)**:
- `Names`类(虽然在提供的代码中没有定义,但可以假设它有`name`、`age`、`many`和`sex`属性),用于封装读取的数据。`set`方法用于设置属性值。
8. **数据计算**:
- 在循环中,程序遍历`alist`,提取每个`Names`对象的`many`属性并累加,计算所有人的总薪资。
这个程序可以作为学习Java文件I/O操作、字符串处理、集合操作和异常处理的基础示例。通过这个例子,开发者可以理解如何在实际项目中处理文本文件数据。
269 浏览量
882 浏览量
169 浏览量
2023-03-13 上传
107 浏览量
2022-09-23 上传
woyaokuaile_1314
- 粉丝: 2
- 资源: 7
最新资源
- 数据库1 (老师的课件)
- Microsoft Captcha Decoder 验证码识别技术
- nhibernate reference
- 计算机系统--计算机使用技巧
- DSP和CPLD实现的地面实时数据处理系统
- 红旗Linux5.0桌面正式版光盘安装=图解教程=
- MF007001 频率规划 ISSUE1.4.doc
- 科技情报检索:GSM网络无线系统网络优化
- MT6225datasheet
- 3G核心网中的软交换技术
- Ubuntu_Linux实用学习教程.pdf
- 快速简洁的C#入门教程
- ALTERA器件选型手册.pdf
- 一种基于Ajax技术的分页方法.pdf
- FPGA指导原则.pdf
- oracle faq