迅雷一道比较基础的笔试面试题目:Java实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
public class FileCount {
public static void ReadSubdirectory(File myDir) {
// 判断myDir是否为文件目录
if (myDir.isDirectory()) {
File[] subFile = myDir.listFiles();
for (int i = 0; i < subFile.length; i++) {
// 如果列表下含有子目录
if (subFile[i].isDirectory()) {
ReadSubdirectory(subFile[i]);
} else {
ReadSubFile(subFile[i]);
}
}
}
}
// 统计当前文件中数字 字母 空格的个数 和 文件行数
public static void ReadSubFile(File file) {
int numCount = 0;// 数字个数
int letterCount = 0;// 字母个数
int spaceCount = 0;// 空格个数
int lineCount = 0;//行数
int uniChar = 0;
try {
FileInputStream input = new FileInputStream(file);
while ((uniChar = input.