在一个txt文件中,有两行内容,分别存放了一个int类型的数值。现在要求编程完成以下操作。
- 将第一行与第二行的和给三行,第二行与第三行的和给第四行,依次类推。
首先一行行读取TXT文件中内容(这里运用字符缓冲流),将每一行的int数值存入list集合中:
BufferedReader br = new BufferedReader(new FileReader("IONumberAdd"));
ArrayList<Integer> array = new ArrayList<Integer>();
String line = null;
while ((line = br.readLine()) != null) {// 读文件
Integer obj = Integer.valueOf(line);
array.add(obj);
}
将集合中后两位相加,最后将所有的数重新添加到该TXT文件中:
(注意:这里是运用字符缓冲流写入数据,当开启新的字符缓冲流时,对应的TXT文件会刷新清空,所以要将之前TXT文件中的数据和新得到的数据一并写入)
Integer num = array.get(array.size() - 1) + array.get(array.size() - 2);
String n = num.toString();
BufferedWriter bw = new BufferedWriter(new FileWriter("IONumberAdd"));
for (Integer integer : array) {
String number = integer.toString();
bw.write(number);
bw.newLine();
bw.flush();
}
bw.write(n);
bw.newLine();
bw.flush();
最后关闭字符缓冲流:
br.close();
bw.close();