java文件读取输出总数_文件的读取以及对读取内容的计数计算

packagetest;importjava.io.File;importjava.io.InputStreamReader;importjava.io.Reader;importjava.nio.file.FileVisitResult;importjava.nio.file.Files;importjava.nio.file.Path;importjava.nio.file.Paths;importjava.nio.file.SimpleFileVisitor;importjava.nio.file.attribute.BasicFileAttributes;importjava.util.Scanner;importjava.io.BufferedReader;importjava.io.BufferedWriter;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io.FileOutputStream;importjava.io.FileReader;importjava.io.FileWriter;importjava.io.IOException;public classWordCounting {private static String str="";private static Scanner sc=newScanner(System.in);private static BufferedReader br=null;private static String a[]=new String[1000000];private static String c[]=new String[10000000];private static int b[]=new int[1000000];private static int length=0;private static int l=0;private static int n=0;private static int j=0;public static void storage() throws IOException {//将单词存到数组a

{ while(str!=null) {int i=0;

str=str.toLowerCase(); //将大写改为小写

for(i=0;i96&&str.charAt(i)<123)) {//判断是否为字母

a[j]=a[j]+str.charAt(i);

}if(str.charAt(i)==' '||str.charAt(i)==','||str.charAt(i)=='.') {//一个单词结尾的条件空格,或者句号,或者逗号

if(!a[j].equals("")) {//不为空

j=j+1;

a[j]="";

}

}

}

str=br.readLine();//读取新的一行内容

}

length=j;

}

}public static void show() {//显示

for(int k=0;k

System.out.print(c[k]+"\t"+b[k]+" ");

System.out.printf("%.2f",(double)b[k]/l*100);//格式化的输出

System.out.print("%");//输出百分号

System.out.println("");

}

}public static void Sorting() {//排序

int t3=0;int t2=0;

String sr="";for(int i=0;i

t3=i;for(int j=i+1;j

t3=j;

}

}if(t3!=i) {

t2=b[i];

b[i]=b[t3];

b[t3]=t2;

sr=c[i];

c[i]=c[t3];

c[t3]=sr;

}

}

}public static void deleteOverlap(){//去重

for(int k=0;k

b[k]=0;

}

c[0]=a[0];int tt=1;

Boolean rt=true;for(int i=1;i

rt=false;for(int j=0;j

rt=true;break;

}

}if(!rt) {

c[tt]=a[i];

tt++;

}

}

l=tt;for(int i=0;i

b[i]++;

}

}

}

}public static void Readfile() {//读取文件

File file=new File("C:\\Users\\lenovo\\Desktop\\Harry Potter and the Sorcerer's Stone.txt");try{

InputStreamReader read= new InputStreamReader(new FileInputStream(file),"UTF-8");

br=newBufferedReader(read);

str=br.readLine();

storage();

br.close();

read.close();

}catch(IOException e) {

System.out.println("读取失败!");

e.printStackTrace();

}

}public static void main(String[] args) throwsIOException {

System.out.println("请输入需要统计的个数:");

n=sc.nextInt();

a[0]="";

Readfile();

deleteOverlap();

Sorting();

show();

}

}packagetest;importjava.io.File;importjava.io.InputStreamReader;importjava.io.Reader;importjava.nio.file.FileVisitResult;importjava.nio.file.Files;importjava.nio.file.Path;importjava.nio.file.Paths;importjava.nio.file.SimpleFileVisitor;importjava.nio.file.attribute.BasicFileAttributes;importjava.util.Scanner;importjava.io.BufferedReader;importjava.io.BufferedWriter;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io.FileOutputStream;importjava.io.FileReader;importjava.io.FileWriter;importjava.io.IOException;public classWordCounting {private static String str="";private static Scanner sc=newScanner(System.in);private static BufferedReader br=null;private static String a[]=new String[1000000];private static String c[]=new String[10000000];private static int b[]=new int[1000000];private static int length=0;private static int l=0;private static int n=0;private static int j=0;public static void storage() throws IOException {//将单词存到数组a

{ while(str!=null) {int i=0;

str=str.toLowerCase(); //将大写改为小写

for(i=0;i96&&str.charAt(i)<123)) {//判断是否为字母

a[j]=a[j]+str.charAt(i);

}if(str.charAt(i)==' '||str.charAt(i)==','||str.charAt(i)=='.') {//一个单词结尾的条件空格,或者句号,或者逗号

if(!a[j].equals("")) {//不为空

j=j+1;

a[j]="";

}

}

}

str=br.readLine();//读取新的一行内容

}

length=j;

}

}public static void show() {//显示

for(int k=0;k

System.out.print(c[k]+"\t"+b[k]+" ");

System.out.printf("%.2f",(double)b[k]/l*100);//格式化的输出

System.out.print("%");//输出百分号

System.out.println("");

}

}public static void Sorting() {//排序

int t3=0;int t2=0;

String sr="";for(int i=0;i

t3=i;for(int j=i+1;j

t3=j;

}

}if(t3!=i) {

t2=b[i];

b[i]=b[t3];

b[t3]=t2;

sr=c[i];

c[i]=c[t3];

c[t3]=sr;

}

}

}public static void deleteOverlap(){//去重

for(int k=0;k

b[k]=0;

}

c[0]=a[0];int tt=1;

Boolean rt=true;for(int i=1;i

rt=false;for(int j=0;j

rt=true;break;

}

}if(!rt) {

c[tt]=a[i];

tt++;

}

}

l=tt;for(int i=0;i

b[i]++;

}

}

}

}public static void Readfile() {//读取文件

File file=new File("C:\\Users\\lenovo\\Desktop\\Harry Potter and the Sorcerer's Stone.txt");try{

InputStreamReader read= new InputStreamReader(new FileInputStream(file),"UTF-8");

br=newBufferedReader(read);

str=br.readLine();

storage();

br.close();

read.close();

}catch(IOException e) {

System.out.println("读取失败!");

e.printStackTrace();

}

}public static void main(String[] args) throwsIOException {

System.out.println("请输入需要统计的个数:");

n=sc.nextInt();

a[0]="";

Readfile();

deleteOverlap();

Sorting();

show();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值