1.准备文本:
3.aaaaaaaaaaaaaaaaaaaaaaaa
5.bbbbbbbbbbbbbbbbbbbbbbb
4.ccccccccccccccccccccccccccc
2ddddddddddddddddddddddddddddddddd
1.eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
6.ffffffffffffffffffffffffffffffffffffffffffff
2.案例分析:
-
逐行读取文本信息。
-
解析文本信息到集合中。
-
遍历集合,按顺序,写出文本信息。
3.案例实现:
public class BufferedTest {
public static void main(String[] args) throws IOException {
// 创建map集合,保存文本数据,键为序号,值为文字
HashMap<String, String> lineMap = new HashMap<>();
// 创建流对象
BufferedReader br = new BufferedReader(new FileReader("in.txt"));
BufferedWriter bw = new BufferedWriter(new FileWriter("out.txt"));
// 读取数据
String line = null;
while ((line = br.readLine())!=null) {
// 解析文本
String[] split = line.split("\\.");
// 保存到集合
lineMap.put(split[0],split[1]);
}
// 释放资源
br.close();
// 遍历map集合
for (int i = 1; i <= lineMap.size(); i++) {
String key = String.valueOf(i);
// 获取map中文本
String value = lineMap.get(key);
// 写出拼接文本
bw.write(key+"."+value);
// 写出换行
bw.newLine();
}
// 释放资源
bw.close();
}
}
心得:
有志者自有千计万计,无志者只感千难万难。
案例分析
-
逐行读取文本信息。
-
解析文本信息到集合中。
-
遍历集合,按顺序,写出文本信息。