Java統計文件中字母個數


import java.text.DecimalFormat;
import java.io.File;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.FileNotFoundException;
public class zimu {
	private void HandleLetter(File file)throws IOException,FileNotFoundException{
		DecimalFormat df = new DecimalFormat("#0.00");
		if(file.length()>0){
			int[] iNum=new int[26];
			FileReader fr=new FileReader(file);
			BufferedReader br=new BufferedReader(fr);
			int i,count=0;
			while((i=br.read())!=-1){
				i-='a';
				if(i>-1&&i<26) iNum[i]++;
			}
			br.close(); 
			fr.close();
			for(i=0;i<26;i++) count+=iNum[i];//總字母
			System.out.println("字母總數:"+count);
			for(i=0;i<26;i++){//打印
				if(iNum[i]!=0)
					System.out.println((char)(i+(int)'a')+"有"+iNum[i]+"個,占"+(df.format(iNum[i]*100/(double)count)+"%"));
			}
		}
		else 
			System.out.println("文件不存在或者無數據,請確認文件!");
	}
	public static void main(String[] args)throws IOException,FileNotFoundException{
		zimu le=new zimu();
		File file=new File("");//文件路徑,記得加后綴
		le.HandleLetter(file);
	}
}

運行結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM