Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
2010-04-09 11:06
861 查看
迅雷的一道上机题
主要用了2个java类实现如下:
主要用了2个java类实现如下:
package lianxi; /** * 用于保存每个文件中要记录的数据 * * @author Administrator * */ public class file { public String name; //文件名 public int num; //数字数目 public int zimu; //字母数 public int hang; //行数 public int kongge; //空格数 public int getKongge() { return kongge; } public void setKongge(int kongge) { this.kongge = kongge; } public int getNum() { return num; } public void setNum(int num) { this.num = num; } public int getZimu() { return zimu; } public void setZimu(int zimu) { this.zimu = zimu; } public int getHang() { return hang; } public void setHang(int hang) { this.hang = hang; } public String getName() { return name; } public void setName(String name) { this.name = name; } } package lianxi; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileReader; import java.util.ArrayList; import java.util.List; /** * Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数? * * @author Administrator * */ public class ReadFile { /** * 保存文件统计信息 */ public static List<file> flist = new ArrayList(); /** * 读取路径 * * @param path */ private static void GetFile(String path) { File filedir = new File(path); ComputeFle(filedir); } /** * 递归遍历文件 * @param filedir */ private static void ComputeFle(File filedir) { if (filedir.isDirectory()) { // 文件目录 File[] farray = filedir.listFiles(); for (File f : farray) { if (f.isDirectory()) { //是目录 ComputeFle(f); } else { //是文件 try { int ch = 0; int count = 0; //数字 int j = 0; //字母 int i = 0; // 行数 int k = 0; // 空格 FileInputStream fis = new FileInputStream(f); BufferedReader br = new BufferedReader( new FileReader(f)); // 统计数字、字母、空格 while ((ch = fis.read()) != -1) { if ('0' <= ch && ch <= '9') { count++; } if ('a' <= ch && ch <= 'z' || 'A' <= ch && ch <= 'Z') { j++; } if (ch == ' ') { k++; } } // 统计行数 while (br.readLine() != null) { i++; } file fi = new file(); fi.setName(f.getName()); fi.setNum(count); fi.setZimu(j); fi.setHang(i); flist.add(fi); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } } /** * 输出 */ public static void Print() { for (file f : flist) { System.out.println(f.getName() + ": ,data:" + f.getNum() + " ,character:" + f.getZimu() + " ,hangshu:" + f.getHang() + " ,kongge:" + f.getKongge()); } } /** * 测试 * * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub GetFile("D://test"); Print(); } }
相关文章推荐
- Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
- java读取txt文件,并统计每行中每个字母出现的次数,并将产生的数字保存到一个新的txt文件中(有加分)
- 利用Map实现统计一组数字(字母)中每个数字(字母)出现的次数
- 从文件读取包含数字和字母字符串,统计每个字符出现的次数,将次数输出到另外一个文件
- java实现输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
- 第13周-项目1-小玩文件-用键盘输入文件名,统计输出文件中每个字母、数字字符出现的次数
- Java 实现大文件统计字母出现个数
- 【Java】三种方式实现统计字符串中字母,数字,空格和其它类型的数量
- java文件操作代码片断实例实现统计文件中字母出现的个数功能
- java实现输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
- 查找一个目录下,所有文件中数字、字母(大小写不区分)、汉字、空格的个数、行数。
- Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法
- 随机产生50个30到35的整数,统计每个数字出现的次数(TreeMap实现),输出时按照数字的降序排列,并且统计出现次数最多的数字和它的次数。
- 【AS3实现经典算法统计字符串中数字、英文字母、空格和其它字符的个数】
- 统计某java文件中的代码行数、某个字符(char)、某字符串(String)出现的次数
- Java 统计一个字符串中每个单词,或者字母出现的次数
- java统计英文字母、空格、数字和其它字符的数目
- 统计某个文件中出现的字符个数,数字个数,空格个数,总共有多少行?
- java记——统计一串字符中每个字母出现的个数
- Java笔记13:统计文件中每个字符出现的次数