代码:
package yu;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.HashMap;
import java.util.Set;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br=new BufferedReader(new FileReader("test.txt")); //带缓冲的输入流对象
HashMap<Character ,Integer> hm=new HashMap<>(); //创建双列集合对象HashMap
int n;//接收字符
while((n=br.read())!=-1) { //br.read()返回的是数字
char ch =(char) n;
if (!hm.containsKey(ch)) {
hm.put(ch, 1); //如果不存在则存进去 比如 a:1
}else {
int num=hm.get(ch); //得到已经存在的字符的次数
hm.put(ch, num+1);
}
}
br.close();
BufferedWriter bw=new BufferedWriter(new FileWriter("test1.txt"));
Set<Character> chs=hm.keySet(); //得到所有的Key值,返回类型 Set
for (Character key : chs) {
bw.write(key+":"+hm.get(key)); //遍历集合将集合中的内容写入文件
bw.write("\r\n");
}
bw.close();
}
}