【Java例题】7.6文件题3-文本文件统计
6.文本文件统计。
已有一个文本文件文件,请统计数字、大写字母、小写字母、汉字及其它字符出现的次数;
然后将这些次数由大到小写到另一个文件之中。
说明:将次数为零的过滤掉排序
package chapter7; import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.util.Scanner; public class demo6 {
public static void main(String[] args) {
int da=0;
int xiao=0;
int shu=0;
int han=0;
int els=0;
try {
Scanner sc = new Scanner(new File("strings.txt"));
PrintStream out=new PrintStream(new File("cord.txt"));
String str=sc.next();
for(int i=0;i<str.length();i++) {
char c=str.charAt(i);
if(c>='A'&&c<='Z') {
da=da+1;
}else if(c>='a'&&c<='z'){
xiao=xiao+1;
}else if(c>='0'&&c<='9') {
shu=shu+1;
}else if(c>=0x4E00&&c<=0x9FA5) {
han=han+1;
}else {
els=els+1;
}
}
int a[]= {da,xiao,shu,han,els};
num b[]=new num[5];
for(int i=0;i<5;i++) {
b[i]=new num(i);
b[i].value=a[i];
}
for(int i=0;i<5;i++) {
for(int j=i+1;j<5;j++) {
if(b[i].value>b[j].value) {
num temp=b[j];
b[j]=b[i];
b[i]=temp;
}
}
}
for(int i=0;i<5;i++) {
out.print(b[i].shownum()+" ");
}
sc.close();
}catch (FileNotFoundException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
} static class num{
int type;
int value;
public num(int i) {
this.type=i;
}
String shownum() {
if(value==0) {
return "";
}
switch(type) {
case 0:return("大写数量:"+value);
case 1:return("小写数量:"+value);
case 2:return("数字数量:"+value);
case 3:return("汉字数量:"+value);
case 4:return("其他数量:"+value);
default:return "";
}
}
}
}
【Java例题】7.6文件题3-文本文件统计的更多相关文章
- 【Java例题】8.2 手工编写字符串统计的可视化程序
2. 手工编写字符串统计的可视化程序. 一个Frame窗体容器,布局为null,两个TextField组件,一个Button组件. Button组件上添加ActionEvent事件监听器Actio ...
- File类的特点?如何创建File类对象?Java中如何操作文件内容,什么是Io流Io流如何读取和写入文件?字节缓冲流使用原则?
重难点提示 学习目标 1.能够了解File类的特点(存在的意义,构造方法,常见方法) 2.能够了解什么是IO流以及分类(IO流的概述以及分类) 3.能够掌握字节输出流的使用(继承体系结构介绍以及常见的 ...
- Java多线程读取大文件
前言 今天是五一假期第一天,按理应该是快乐玩耍的日子,但是作为一个北漂到京师的开发人员,实在难想出去那玩耍.好玩的地方比较远,近处又感觉没意思.于是乎,闲着写篇文章,总结下昨天写的程序吧. 昨天下午朋 ...
- Java学习-014-文本文件写入实例源代码(两种写入方式)
此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 第一种:文本文件写入,若文件存在则删除原文件,并重新创建文件.源代码如下所示: /** * @fun ...
- Java学习-013-文本文件读取实例源代码(两种数据返回格式)
此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 1.读取的文本文件内容以一维数组[LinkedList<String>]的形式返回,源代 ...
- java中io对文件操作的简单介绍
11.3 I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程 ...
- Java笔记:Java 流(Stream)、文件(File)和IO
更新时间:2018-1-7 12:27:21 更多请查看在线文集:http://android.52fhy.com/java/index.html java.io 包几乎包含了所有操作输入.输出需要的 ...
- Java实现zip压缩文件的解压
需求描述: 前段时间写了一篇博客<Java实现对文本文件MD5加密并ftp传送到远程主机目录>,实现了一部分的业务需求.然而有些业务可能不止传送一个文件,有时候客户需要传多个文件,原有系统 ...
- 牛客网 Java 工程师能力评估 20 题 - 详解
牛客网 Java 工程师能力评估 20 题 - 详解 不知在看博客的你是否知道 牛客网,不知道就太落后了,分享给你 : 牛客网 此 20 题,绝对不只是 20 题! 免责声明:本博客为学习笔记,如有侵 ...
随机推荐
- Fabric1.4源码解析:客户端安装链码
看了看客户端安装链码的部分,感觉还是比较简单的,所以在这里记录一下. 还是先给出安装链码所使用的命令好了,这里就使用官方的安装链码的一个例子: #-n 指定mycc是由用户定义 ...
- appium adb端口被占用问题
1.netstat -ano | findstr "5037" 2.查看进程 看看哪个占用端口了 结束进程 adb devices 提示 ...ack 问题解决 新建一个环境 ...
- Java设计模式学习笔记(一) 设计模式概述
前言 大约在一年前学习过一段时间的设计模式,但是当时自己的学习方式比较低效,也没有深刻的去理解.运用所学的知识. 所以现在准备系统的再重新学习一遍,写一个关于设计模式的系列博客. 废话不多说,正文开始 ...
- 为什么我使用 Linux 开发
Linux 能用吗? 当我对 Linux 的印象似乎还停留在黑乎乎的命令行界面上的时候,我身边的一些朋友告诉我或者建议我使用 Linux 时,我会一脸惊讶的问他,那个怎么用(来开发或者日常使用)? L ...
- 双端队列 duque
一.双端队列(Deque) - 概念:deque(也称为双端队列)是与队列类似的项的有序集合.它有两个端部,首部和尾部,并且项在集合中保持不变. - 特性:deque 特殊之处在于添加和删除项是非限制 ...
- Appium+python自动化(十九)- 猴哥失散多年的混血弟弟还是妹妹- Monkey(猴子)参数(超详解)
简介 前边几篇介绍了Monkey以及Monkey的事件,今天就给小伙伴们介绍和分享一下Monkey的参数. 首先我们看一下这幅图来大致了解一下: 1.Monkey 命令 基本参数介绍 -p <允 ...
- Spring+MyBatis时Access denied for user '高欢欢'@'localhost' (using password: YES)的异常解决方案
今天在做spring+mybatis整合的时候系统只要一运行就会报下面的错误,搞了几个小时硬是没有找的原因 警告: com.mchange.v2.resourcepool.BasicResourceP ...
- Django工程的分层结构
前言 传统上我们都知道在Django中的MTV模式,具体内容含义我们再来回顾一下: M:是Model的简称,它的目标就是通过定义模型来处理和数据库进行交互,有了这一层或者这种类型的对象,我们就可以通过 ...
- 【DFS练习】【最大的蛋糕块】-C++
这道题目是一个基本的dfs模板(?)下面日常贴一波dfs的基本模板: void dfs()//参数用来表示状态 { if(到达终点状态) { ...//根据题意添加 return; } if(越界或者 ...
- 小记---idea springboot 报错没有get或者set方法
给idea 安装一个插件即可