import java.io.BufferedReader;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.IOException;

import java.io.InputStreamReader;

/**

* 将一个文件中英文,中文,数字,其他字符以及字符总数统计出来

*

* @author xcx

* @time 2017年6月24日下午4:12:53

*/

public class Statistics {

public static void main(String[] args) throws IOException {

String E1 = "[\u4e00-\u9fa5]";// 中文

String E2 = "[a-zA-Z]";// 英文

String E3 = "[0-9]";// 数字

String file = "d:\\java\\dd.txt";// 要读的文件路径

// 创建读入字节流

FileInputStream fis = new FileInputStream(file);

// 将字节流转化为字符流

InputStreamReader isr = new InputStreamReader(fis);

// 转化为缓存模式

BufferedReader br = new BufferedReader(isr);

int numSum = 0;// 记录数字字符

int letSum = 0;// 记录英文字符

int punSum = 0;// 记录标点字符

int chineseSum = 0;// 记录中文字符

int totle = 0;// 记录总字符

// 将读出来的字符复制到ss

String ss = "";

String s;

while ((s = br.readLine()) != null) {

ss += s;

}

// 遍历字符串

String temp;

for (int i = 0; i < ss.length(); i++) {

temp = String.valueOf(ss.charAt(i));

if (temp.matches(E1)) {// 如果该字符匹配中文

chineseSum++;

} else if (temp.matches(E2)) {// 如果该字符匹配英文

letSum++;

} else if (temp.matches(E3)) {// 如果该字符匹配数字

numSum++;

} else

punSum++;// 其他

}

// 总的字符数

totle = numSum + letSum + punSum + chineseSum;

// 输出

System.out.println("数字有:" + numSum + "个");

System.out.println("英文有:" + letSum + "个");

System.out.println("其他字符有:" + punSum + "个");

System.out.println("中文有:" + chineseSum + "个");

System.out.println("总的字符有:" + totle + "个");

}

}

java统计string中文数字英文_Java学习(4):统计一个文件中的英文,中文,数字,其他字符以及字符总数...相关推荐

  1. java applet类开始博饼_java学习笔记---第一个applet程序以及一个小问题的解决

    继续学习! 在D:\majava\文件夹下建立了一个helloworld_app.java,写入以下内容: import java.awt.*; import java.applet.*; publi ...

  2. java基础IO流使用读取一个文件中的文字输出到控制台上

    读取一个文件中的文字输出到控制台上 import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IO ...

  3. linux统计某个字符个数,Linux统计一个文件中特定字符个数的方法

    统计一个文件中某个字符串的个数,其实就是在在一块沙地里面找石头,有的人看到石头以后,在上面做个标记(grep),然后记住自己做了多少个标记:有的人看到石头以后,把它挖了(tr),最后统计自己挖了多少石 ...

  4. 案例描述:比赛分数管理系统,需要统计历届冠军所得比赛得分,并记录到文件中,其中系统有如下需求:- 打开系统有欢迎界面,并显示可选择的选项- 选项1:记录比赛得分- 选项2:查看往届

    案例描述:比赛分数管理系统,需要统计历届冠军所得比赛得分,并记录到文件中,其中系统有如下需求: -   打开系统有欢迎界面,并显示可选择的选项 -   选项1:记录比赛得分 -   选项2:查看往届记 ...

  5. 一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。 编写一个函数找出这两个只出现一次的数字。

    一个数组中只有两个数字是出现一次,其他所有数字都出现了两次.编写一个函数找出这两个只出现一次的数字. 1.代码编写 2.结果 1.代码编写 代码如下(示例): #define _CRT_SECURE_ ...

  6. 如何翻译word文件中的英文

    现如今的不论是学生还是职员,都喜欢在网络上查找自己需要的文件资料,然后下载保存到电脑中进行浏览使用.可是有时却发现,下载的文件资料内容全是英文.可是奈何自己的英语水平不是很好,无法阅读浏览文件资料的意 ...

  7. C语言:一个数组中只有两个数字是出现一次

    1 //1.一个数组中只有两个数字是出现一次, 2 //其他所有数字都出现了两次. 3 //找出这两个数字,编程实现.a 4 5 //^=单独两个数的^结果 6 //单独出现的两个数不同位的标记 7 ...

  8. JAVA实现在数据不匹配时把数据写到文件中

    场景:有一个map存有ID和字符串,一个list存有字符串,判断map中的字符串是否在list中存在.如果不存在,则打印到控制台,并写入到一个文件中. 代码如下: for (String obj : ...

  9. 编写一个函数,该函数能判断一个英文句子str(带空格)中是否含有某个单词w,如“How old are you?”含有“old”。在main函数中输入一个英文句子,再输入一个单词,如果英文句子中含有那

    题目要求: 编写一个C程序,实现以下功能: 编写一个函数,该函数能判断一个英文句子str(带空格(升级版))中是否含有某个单词w,如"How old are you?"含有&quo ...

最新文章

  1. 计算整型数的二进制中包含多少个1
  2. DOM渲染的详细过程
  3. leetcode算法第8题
  4. 2019/1/14,15 Python今日收获
  5. 新产品孕育记:PM如何把一款产品从0带到1
  6. 好吧,关于nginx
  7. PyOpenCV 坐标系统
  8. CSS的历史与工作原理
  9. 数据结构学不会?视频+项目+网站大全,还有独家学习方法
  10. 【VS2010学习笔记】【函数学习】一(MFC+OpenCV2.4.7读取摄像头之WM_TIMER消息处理函数的添加问题)
  11. IIS开启了GZIP和XCACHE之后飞快
  12. 【知识图谱】阿里巴巴电商知识图谱
  13. Cloakroom BZOJ2794 POI2012(背包问题)
  14. php get month,JavaScript从Date对象返回月份 (0 ~ 11)的方法getMonth()
  15. 2021年高处作业安装拆除维护证考试题库及安装拆除维护试题解析
  16. Wilcoxon signed-rank test和Wilcoxon rank-sum test及其在SciPy中的使用注意事项
  17. Spark 持久化(cache和persist的区别)
  18. 原生导航栏控件navigationbar使用说明
  19. typora中输入数学公式
  20. 手机技巧:微信语音铃声怎么设置?

热门文章

  1. C语言读取文本文件到字符数组中,和源文件文本长度不一致
  2. 开放平台如何做接口的签名和加解密?
  3. npm ERR! code EPERM npm ERR! syscall unlink npm ERR! errno -4048 解决方法
  4. 软件工程文档生成工具
  5. 离散数学重点(第二部分)
  6. 无线交换机 dhcp服务器,在一台交换机上有DHCP服务器,在另一台交换机上实现DHCP中继...
  7. 【译】MochiWeb(基于Erlang的高性能WEB服务器)实用入门教程
  8. 项目——员工管理系统
  9. nextcloud安装日历插件使用并设置导入导出和云端同步(安卓手机和ios手机)
  10. 为什么要抛弃maven