s-day10-字符缓冲流的练习(文本排序)

This commit is contained in:
2026-08-11 16:51:36 +08:00
parent 9ad8fdbe24
commit 51325f926a
2 changed files with 33 additions and 3 deletions
@@ -14,7 +14,8 @@ public class Demo04 {
字符缓冲输入流,一次读取一行文本
String readLine() 读一行文字。
*/
BufferedReader br = new BufferedReader(new FileReader("source2.txt"));
// BufferedReader br = new BufferedReader(new FileReader("source2.txt"));
BufferedReader br = new BufferedReader(new FileReader("\\src\\com\\inmind\\buffered01\\Demo01.java"));
/*String line = br.readLine();
System.out.println(line);
+31 -2
View File
@@ -1,4 +1,11 @@
package com.inmind.buffered01;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.HashMap;
/*
字符缓冲流的练习(文本排序)【BufferedReader BufferedWriter】
3.侍中、侍郎郭攸之、费祎、董允等,此皆良实,志虑忠纯,是以先帝简拔以遗陛下。愚以为宫中之事,事无大小,悉以咨之,然后施行,必得裨补阙漏,有所广益。
@@ -19,7 +26,29 @@ package com.inmind.buffered01;
*/
public class Test05 {
public static void main(String[] args) {
"".split("\\.");//这样才是按.切割
public static void main(String[] args) throws Exception {
//1.创建一个Map对象保存键值对,9---->今当远离,临表涕零,不知所言
HashMap<String, String> maps = new HashMap<>();
//2.创建字符缓冲输入流对象,读取每行文本(readLine)
BufferedReader br = new BufferedReader(new FileReader("source2.txt"));
//3.读到每行文本时,按.切割,左边作为key,右边的文本就作为值,保存到map
String line;
while ((line = br.readLine()) != null) {
//.表示正则中的每个字符,会把所有内容切割掉
String[] values = line.split("\\.");
maps.put(values[0], values[1]);//9---->今当远离,临表涕零,不知所言
}
System.out.println(maps.size());
System.out.println(maps);
//4.根据1~9的顺序,将Map中的文本数据输出到文件中,每行要换行(newLine)
BufferedWriter bw = new BufferedWriter(new FileWriter("source1.txt"));
for (int i = 1; i <= 9; i++) {
String s = maps.get(i+"");
bw.write(i+"-"+s);
bw.newLine();
bw.flush();
}
br.close();
bw.close();
}
}