1.用ava 编写一个程序并附带注释,程序实现对用户指定的文本文件中的英文字符和字符串的个数进行统计的功能,并将结果根据用户选择输出至结果文件或屏幕。 1) 构建统计类,该类实现对I/O的操纵;实现对文本文件中英文字符、字符串的统计;实现对统计结果的输出。 2) 构建测试类,该类实现与用户的交互,向用户提示操作信息,并接收用户的操作请求。 程序应具有良好的人机交互性能,即:程序应向用户提示功能说明,并可根据用户的功能选择,执行对应的功能,并给出带详细描述信息的最终执行结果。
时间: 2024-02-22 07:58:50 浏览: 57
AVA.txtAVA数据集压缩文件中包含的是整个AVA数据集,在官网下载下来的都是文本,作者手写了一个程序将一个个图片爬下来,仅供大家参考学习,如果纰漏欢迎指出
好的,下面是Java代码以及注释,请参考:
```java
import java.io.*;
public class TextFileAnalyzer {
private String filePath; // 文件路径
private int charCount; // 字符个数
private int wordCount; // 字符串个数
public TextFileAnalyzer(String filePath) {
this.filePath = filePath;
this.charCount = 0;
this.wordCount = 0;
}
// 统计文件中的字符和字符串个数
public void analyze() {
try {
BufferedReader in = new BufferedReader(new FileReader(filePath));
String line;
while ((line = in.readLine()) != null) {
charCount += line.length(); // 统计字符个数
String[] words = line.split("\\s+"); // 按空格划分字符串
wordCount += words.length; // 统计字符串个数
}
in.close();
} catch (IOException e) {
System.out.println("文件读取错误:" + e.getMessage());
}
}
// 将统计结果输出到屏幕或文件
public void output(boolean toFile) {
if (toFile) {
try {
PrintWriter out = new PrintWriter(new FileWriter("result.txt"));
out.println("字符个数:" + charCount);
out.println("字符串个数:" + wordCount);
out.close();
System.out.println("结果已输出到文件 result.txt 中");
} catch (IOException e) {
System.out.println("文件写入错误:" + e.getMessage());
}
} else {
System.out.println("字符个数:" + charCount);
System.out.println("字符串个数:" + wordCount);
}
}
}
public class TextFileAnalyzerTest {
public static void main(String[] args) {
System.out.println("欢迎使用文本文件分析程序!");
System.out.println("请输入要分析的文件路径:");
Scanner scanner = new Scanner(System.in);
String filePath = scanner.nextLine();
TextFileAnalyzer analyzer = new TextFileAnalyzer(filePath);
analyzer.analyze(); // 统计字符和字符串个数
System.out.println("请选择输出方式:");
System.out.println("1. 输出到屏幕");
System.out.println("2. 输出到文件");
int choice = scanner.nextInt();
if (choice == 2) {
analyzer.output(true); // 输出到文件
} else {
analyzer.output(false); // 输出到屏幕
}
}
}
```
这个程序实现了一个文本文件分析器,可以统计指定文件中的英文字符和字符串数量,并将结果输出到屏幕或文件。其中,`TextFileAnalyzer` 类用于实现文件分析功能,`TextFileAnalyzerTest` 类用于与用户进行交互和测试。
阅读全文