在 E 盘下创建一个编写一个文本文件 data.txt,并向文件中输入两行内容“Hello Java!” 和“I love coding!”。编写一段 Java 程序,使用 FileInputStream 读入该文件内容,并输 出显示在屏幕上,并计算显示总共读入了多少字节的内容。
时间: 2024-03-26 14:36:20 浏览: 99
好的,我来为您解答这个问题。
您可以使用下面的 Java 代码来实现:
```java
import java.io.*;
public class ReadFileDemo {
public static void main(String[] args) {
try {
File file = new File("E:\\data.txt");
FileInputStream fis = new FileInputStream(file);
byte[] buf = new byte[1024];
int len = 0;
while ((len = fis.read(buf)) != -1) {
System.out.println(new String(buf, 0, len));
}
fis.close();
System.out.println("共读取了 " + file.length() + " 个字节。");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
解释一下这段代码:
1. 首先,我们创建一个 `File` 对象,它表示要读取的文件。这里我们假设文件名为 `data.txt`,并且放在 E 盘根目录下。
2. 接着,我们创建一个 `FileInputStream` 对象,用来读取文件内容。我们使用一个 byte 数组 `buf` 来缓存读取到的数据,每次最多读取 1024 个字节。
3. 然后,我们进入一个循环,反复调用 `fis.read(buf)` 方法来读取文件内容。当读取到文件末尾时,`read` 方法会返回 -1,循环结束。
4. 在循环内部,我们使用 `System.out.println` 方法将读取到的内容输出到屏幕上。注意要将 byte 数组转换为字符串,这里我们使用了 `new String(buf, 0, len)`。
5. 最后,我们关闭 `FileInputStream` 对象,并输出读取到的字节数,即文件长度。这里我们使用 `File` 对象的 `length` 方法来获取文件长度。
希望这个代码能够帮助到您。如果您有任何问题,可以随时问我。
阅读全文