使用java在d盘创建一个文本文件test.txt(里面的内容由随机的数字和字母组成),并定义一个方法统计test.txt文件中指定字符出现的次数。 比如a字符在文件中出现了10次则调用方法传入a后,方法内部输出:a出现10次。
时间: 2024-03-21 19:40:59 浏览: 59
好的,我明白了你的问题。这里是一个Java代码示例,可以满足你的需求:
```java
import java.io.*;
import java.util.*;
public class TextFile {
public static void main(String[] args) {
String filePath = "D:\\test.txt";
String content = generateRandomString(100); // 生成100个随机字符和数字的字符串
writeToFile(filePath, content); // 将字符串写入文件
int count = countCharInFile(filePath, 'a'); // 统计文件中指定字符出现的次数
System.out.println("a出现" + count + "次。");
}
// 生成指定长度的随机字符串
private static String generateRandomString(int length) {
String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random random = new Random();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < length; i++) {
int index = random.nextInt(str.length());
sb.append(str.charAt(index));
}
return sb.toString();
}
// 将字符串写入文件
private static void writeToFile(String filePath, String content) {
try {
FileWriter fw = new FileWriter(filePath);
fw.write(content);
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
// 统计文件中指定字符出现的次数
private static int countCharInFile(String filePath, char ch) {
int count = 0;
try {
FileReader fr = new FileReader(filePath);
int c;
while ((c = fr.read()) != -1) {
if ((char) c == ch) {
count++;
}
}
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
return count;
}
}
```
你可以根据自己的需要进行修改和调整。希望能帮到你!
阅读全文