Java统计txt文件的字符、单词和行的总数,并且查询特定字母出现的次数

 

问题描述:

用Java统计txt文件下的字符、单词和行的总数,

并且查询特定字母出现的次数,

如果输入不规范,则重新输入,直到输入为一个字母位置,

并且查询该字母在文件中出现的次数

 

代码实现:(此处文件名为“an_interesting_story.txt”)

package com.HelloWorld;
import java.util.*;
import java.io.File;
import java.util.Scanner;
public class Fileoperation{
	public static void main(String[] args) throws Exception {
		File file = new File("an_interesting_story.txt");
		if(!file.exists()) {
			System.out.println("The file is Null");
			System.exit(0);
		}
		Scanner cin = new Scanner(file);
		int charactere=0, words=0, lines=0;
		while(cin.hasNext()) {
			String line = cin.nextLine();
			lines++;
			charactere+=line.length();
			String[] s = line.trim().split(" ");
			words+=s.length;
			//System.out.println(s.length);
		}
		System.out.println("File " + file + " has");
		System.out.println(charactere + " charactere");
		System.out.println(words + " words");
		System.out.println(lines + " lines");
		
		Scanner input = new Scanner(System.in);
		Scanner cout = new Scanner(file);
		System.out.print("请输入一个需要匹配文件的字母:");
		boolean flag = true;
		int sum=0;
		while(flag) {
			char ch = input.nextLine().charAt(0);
			try {
				is(ch);
				while(cout.hasNext()) {
					String line = cout.nextLine();
					for(int i=0; i<line.length(); ++i)
						if(line.charAt(i) == ch)
							sum++;
				}
				System.out.println(ch + "出现的次数为: " + sum);
				flag = false;
			}catch(Exception e){
				System.out.print("格式不正确,请重新输入: ");
			}
		}
	}
	public static void is(char ch) throws Exception{
		if(!((ch>='a' && ch<='z') || (ch>='A' && ch<='Z')))
			throw new Exception();
	}
}

样例截图:

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值