FileInputStream转换成ByteArrayOutputStream
时间: 2023-11-27 13:46:05 浏览: 34
可以使用FileInputStream和ByteArrayOutputStream来实现将文件转换为字节数组的操作。具体步骤如下:
```java
import java.io.*;
public class FileToByteArray {
public static void main(String[] args) throws IOException {
// 创建FileInputStream对象
FileInputStream fis = new FileInputStream("file.txt");
// 创建ByteArrayOutputStream对象
ByteArrayOutputStream baos = new ByteArrayOutputStream();
// 定义缓冲区
byte[] buffer = new byte[1024];
int len;
// 读取文件内容并写入ByteArrayOutputStream
while ((len = fis.read(buffer)) != -1) {
baos.write(buffer, 0, len);
}
// 关闭流
fis.close();
baos.close();
// 将ByteArrayOutputStream转换为字节数组
byte[] bytes = baos.toByteArray();
}
}
```
其中,FileInputStream用于读取文件内容,ByteArrayOutputStream用于将读取的内容写入内存中的缓冲区,最后通过toByteArray()方法将缓冲区中的内容转换为字节数组。