(1) 之前习惯性不考虑文件格式,一般都用简单的FileReader和BufferedReader标配,代码如下:
FileReader fr=new FileReader("D://haha.txt");
BufferedReader br=new BufferedReader(fr);
String line=null;
while((line=br.readLine())!=null){
一系列操作balabala~~;
}
br.close();
fr.close();
(2)后来遇到很多时候需要按照一定的格式进行文件的读写操作,修改后代码如下:
File f=new File("D://haha.txt');
FileInputStream in;
in = new FileInputStream(f);
BufferedReader br=new BufferedReader(new InputStreamReader(in,"UTF-8"));
String line=null;
Maptc=new HashMap();
while((line=br.readLine())!=null){
String elem[]=line.split("");
String data[]=elem[9].split("-");
for(int i=1;i
if(tc.containsKey(data[i])){
tc.put(data[i], tc.get(data[i])+1);
}else{
tc.put(data[i], 1);
}
}
}
br.close();
in.close();
//排序
ArrayList>list=new ArrayList>(tc.entrySet());
Collections.sort(list, new Comparator>(){
public int compare(Entryo1,Entryo2){
int v1=o1.getValue().intValue();
int v2=o2.getValue().intValue();
return v2-v1; //降序排列
}
});
//写入
File f2=new File("D://sortedTags.txt");
FileOutputStream out=new FileOutputStream(f2);
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(out,"UTF-8"));
for(Entry e:list){
bw.write(e.getKey()+"\t"+e.getValue()+"\n");
}
bw.close();
out.close();