读取文件转为ByteArrayOutputStream
时间: 2023-10-22 10:23:42 浏览: 44
你可以使用 Java 的 FileInputStream 和 ByteArrayOutputStream 类来实现读取文件并转换为 ByteArrayOutputStream。
以下是一个示例代码:
```java
import java.io.*;
public class FileToByteArrayOutputStream {
public static void main(String[] args) {
try {
// 创建文件输入流
FileInputStream fis = new FileInputStream("file.txt");
// 创建字节数组输出流
ByteArrayOutputStream bos = new ByteArrayOutputStream();
// 从输入流中读取数据并写入到输出流中
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer)) != -1) {
bos.write(buffer, 0, length);
}
// 关闭输入流和输出流
fis.close();
bos.close();
// 获取字节数组
byte[] byteArray = bos.toByteArray();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在上面的示例代码中,我们首先创建了一个 FileInputStream 对象来读取文件,然后创建了一个 ByteArrayOutputStream 对象来存储读取到的数据。接着,我们使用一个循环读取 FileInputStream 对象中的数据并写入 ByteArrayOutputStream 对象中,直到读取完毕。最后,我们关闭 FileInputStream 和 ByteArrayOutputStream 对象,并使用 toByteArray() 方法获取字节数组。