自编WordCount
学习JAVA 自己编个程序 简单的统计word 主要是为了验证学的一些东西 大家不要笑话我^_^//TreeMapimport java.io.*;import java.util.*;class WordCount {/*public static void print(Collection c){Iterator it=c.iterator();while(it.hasNext())System.out.println(it.next());}*/public static void main(String[] args) throws Exception {FileInputStream fis=new FileInputStream("C:\\eclipse\\workspace\\a.txt");InputStreamReader isr=new InputStreamReader(fis);BufferedReader br=new BufferedReader(isr);FileOutputStream fos=new FileOutputStream("C:\\eclipse\\workspace\\count.txt");//BufferedOutputStream bos=new BufferedOutputStream(fos);OutputStreamWriter osw=new OutputStreamWriter(fos);BufferedWriter bw=new BufferedWriter(osw);String strword;int num=1;TreeMap tm=new TreeMap();String strRead;strRead=br.readLine();while(strRead!=null){StringTokenizer tokenizer=new StringTokenizer(strRead);while(tokenizer.hasMoreTokens()){strword=tokenizer.nextToken();if(tm.containsKey(strword)){num=(Integer)tm.get(strword);num++;tm.put(strword,num);}elsetm.put(strword,num);}strRead=br.readLine();num=1;}/*Set key=tm.keySet();Collection value=tm.values();print(key);print(value);*/Iterator key=tm.keySet().iterator();while(key.hasNext()){String keys=(String)key.next();int values=(Integer)tm.get(keys);System.out.println(keys+":"+values);/*bos.write(keys.getBytes());bos.write(":".getBytes());bos.write(String.valueOf(values).getBytes());bos.write("\r\n".getBytes());bos.flush();*/bw.write(keys);bw.write(":");bw.write(String.valueOf(values));bw.write("\r\n");bw.flush();}br.close();//bos.close();bw.close();}}
页:
[1]