• 文本文档中各字母出现次数汇总(java)


      1 package 字母频率统计;
      2 import java.io.*;
      3 public class Inputfile {
      4     public static void main(String args[]) {
      5         try {
      6             char shu[] = new char[1000];
      7             char zimu[] = new char[52];
      8             int j=0;
      9             int count[]=new int[52];
     10             String pathname="D:\a.txt";
     11             File filename=new File(pathname);
     12             InputStreamReader reader=new InputStreamReader(new FileInputStream(filename));
     13             BufferedReader br=new BufferedReader(reader);
     14             String line[]=new String[100];;    
     15             for(int i=0;i<line.length;i++){
     16             line[i]=br.readLine();    
     17             }
     18             br.close();
     19             int k=0;
     20              while(line[k]!=null) {
     21                  for(int i=0;i<line[k].length();i++) {                                
     22                       shu[j]=line[k].charAt(i);
     23                       j++;                     
     24                  }
     25                  k++;
     26             }    
     27             for(int i=0;i<shu.length;i++) {
     28                  switch(shu[i]) {
     29                  case 'a':zimu[0]='a';count[0]++;break;
     30                  case 'b':zimu[1]='b';count[1]++;break;
     31                  case 'c':zimu[2]='c';count[2]++;break;
     32                  case 'd':zimu[3]='d';count[3]++;break;
     33                  case 'e':zimu[4]='e';count[4]++;break;
     34                  case 'f':zimu[5]='f';count[5]++;break;
     35                  case 'g':zimu[6]='g';count[6]++;break;
     36                  case 'h':zimu[7]='h';count[7]++;break;
     37                  case 'i':zimu[8]='i';count[8]++;break;
     38                  case 'j':zimu[9]='j';count[9]++;break;
     39                  case 'k':zimu[10]='k';count[10]++;break;
     40                  case 'l':zimu[11]='l';count[11]++;break;
     41                  case 'm':zimu[12]='m';count[12]++;break;
     42                  case 'n':zimu[13]='n';count[13]++;break;
     43                  case 'o':zimu[14]='o';count[14]++;break;
     44                  case 'p':zimu[15]='p';count[15]++;break;
     45                  case 'q':zimu[16]='q';count[16]++;break;
     46                  case 'r':zimu[17]='r';count[17]++;break;
     47                  case 's':zimu[18]='s';count[18]++;break;
     48                  case 't':zimu[19]='t';count[19]++;break;
     49                  case 'u':zimu[20]='u';count[20]++;break;
     50                  case 'v':zimu[21]='v';count[21]++;break;
     51                  case 'w':zimu[22]='w';count[22]++;break;
     52                  case 'x':zimu[23]='x';count[23]++;break;
     53                  case 'y':zimu[24]='y';count[24]++;break;
     54                  case 'z':zimu[25]='z';count[25]++;break;
     55                  case 'A':zimu[26]='A';count[26]++;break;
     56                  case 'B':zimu[27]='B';count[27]++;break;
     57                  case 'C':zimu[28]='C';count[28]++;break;
     58                  case 'D':zimu[29]='D';count[29]++;break;
     59                  case 'E':zimu[30]='E';count[30]++;break;
     60                  case 'F':zimu[31]='F';count[31]++;break;
     61                  case 'G':zimu[32]='G';count[32]++;break;
     62                  case 'H':zimu[33]='H';count[33]++;break;
     63                  case 'I':zimu[34]='I';count[34]++;break;
     64                  case 'J':zimu[35]='G';count[35]++;break;
     65                  case 'K':zimu[36]='K';count[36]++;break;
     66                  case 'L':zimu[37]='L';count[37]++;break;
     67                  case 'M':zimu[38]='M';count[38]++;break;
     68                  case 'N':zimu[39]='N';count[39]++;break;
     69                  case 'O':zimu[40]='O';count[40]++;break;
     70                  case 'P':zimu[41]='P';count[41]++;break;
     71                  case 'Q':zimu[42]='Q';count[42]++;break;
     72                  case 'R':zimu[43]='R';count[43]++;break;
     73                  case 'S':zimu[44]='S';count[44]++;break;
     74                  case 'T':zimu[45]='T';count[45]++;break;
     75                  case 'U':zimu[46]='U';count[46]++;break;
     76                  case 'V':zimu[47]='V';count[47]++;break;
     77                  case 'W':zimu[48]='W';count[48]++;break;
     78                  case 'X':zimu[49]='X';count[49]++;break;
     79                  case 'Y':zimu[50]='Y';count[50]++;break;
     80                  case 'Z':zimu[51]='Z';count[51]++;
     81                  }
     82             }    
     83             int ci=0;
     84             int sum=0;
     85             System.out.println("短文中各字母出现情况统计如下:");
     86             for(int i=0;i<52;i++)
     87             {
     88                 if(count[i]!=0) {
     89                     ci++;
     90                     sum+=count[i];
     91                     System.out.println(ci+".字母"+zimu[i]+"的出现次数是:"+count[i]);
     92                     }
     93             }   
     94             System.out.println("字母共计:"+sum+"个");
     95         }catch (Exception e) {
     96             e.printStackTrace();
     97         }
     98     }
     99 
    100 }

    测试文档

    运行截图

    构成思路:

    一,利用输入流从文本文档读入字符串;

    二,利用方法charAT(),将字符串转换为字符数组;

    三,利用for循环和switch语句统计字母次数

    四,输出结果。

  • 相关阅读:
    为什么数据库连接很消耗资源 转
    在Eclipse中编写servlet时出现"The import javax.servlet cannot be resolved" 问题解决办法
    multipart/form-data post 方法提交表单,后台获取不到数据
    java 数据库查询Date类型字段 没有了时分秒 全为 00 的解决办法
    Eclipse/myEclipse 代码提示/自动提示/自动完成设置(转)
    PL/SQL破解方法(不需要注册码)
    Java
    tomcat开发环境配置
    文件操作权限
    Java版office文档在线预览
  • 原文地址:https://www.cnblogs.com/mawangwang/p/9775560.html
Copyright © 2020-2023  润新知