package cn.dali3.code22;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
/*目的 把文本中打乱的内容恢复
* 2.明月几时有?把酒问青天。不知天上宫阙,今夕是何年。我欲乘风归去,又恐琼楼玉宇,高处不胜寒。起舞弄清影,何似在人间?(何似 一作:何时;又恐 一作:惟 / 唯恐)
1.丙辰中秋,欢饮达旦,大醉,作此篇,兼怀子由。
3.转朱阁,低绮户,照无眠。不应有恨,何事长向别时圆?人有悲欢离合,月有阴晴圆缺,此事古难全。但愿人长久,千里共婵娟。(长向 一作:偏向)
思路: 1.创建一个字符缓冲输入流
创建一个字符缓冲输出流
2.使用readline方法读取一行字符串,再进行切割
3.把切割的字符串放入到HashMap集合中
4.HashMap会根据key值进行自动排序,将排序好的集合让key和value连接起来
5.写入到文本中*/
public class Demo01ex {
public static void main(String[] args) throws IOException {
Map<String,String> map = new HashMap<>();
File file = new File("C:\\Users\\Administrator\\Desktop\\水调歌头.txt");
File file2 = new File("C:\\Users\\Administrator\\Desktop\\水调歌头3.txt");
InputStreamReader isr = new InputStreamReader(new FileInputStream(file),"UTF-8");
FileWriter fw = new FileWriter(file2);
BufferedReader br = new BufferedReader(isr);
BufferedWriter bw = new BufferedWriter(fw);
String line ;
while((line=br.readLine())!=null){
System.out.println(line);
String [] arrayStr = line.split("\\.",2);
map.put(arrayStr[0],arrayStr[1]);
}
for (String key: map.keySet()) {
bw.write(key+"."+map.get(key));
bw.newLine();
}
isr.close();
bw.close();
}
}
文件内容排序练习
最新推荐文章于 2022-04-04 23:46:10 发布