java,使用scanner读取文本文件中的单词,字符和行数
时间: 2025-01-02 12:45:47 浏览: 12
在Java中,你可以使用`java.io.FileReader`和`java.util.Scanner`类来读取文本文件中的内容,包括单词、字符和行数。以下是一个简单的示例:
```java
import java.io.File;
import java.io.FileReader;
import java.util.Scanner;
public class ReadFileExample {
public static void main(String[] args) {
File file = new File("filename.txt"); // 替换为你想要读取的文件名
Scanner scanner = null;
try {
// 创建Scanner实例并打开文件
scanner = new Scanner(new FileReader(file));
int lineCount = 0; // 行数计数器
while (scanner.hasNextLine()) { // 当还有下一行时循环
String line = scanner.nextLine(); // 读取一行
System.out.println("Line " + ++lineCount + ": " + line); // 输出行号和行内容
// 分割单词
String[] words = line.split("\\s+"); // 使用空格分隔符分割单词
for (String word : words) {
System.out.println("Word: " + word);
}
}
int characterCount = scanner使用的总字符数; // 总字符数需要你自己计算,这里仅作为示例给出
System.out.println("Total characters: " + characterCount);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (scanner != null) {
scanner.close(); // 关闭扫描器释放资源
}
}
}
}
```
注意,为了获取总字符数,你需要遍历整个文件,并累加每个单词的长度。在实际应用中,这可能会比较消耗性能,因为不是所有语言都提供直接获取行数或字符数的方法。
阅读全文