FileOutputStream转ByteArrayOutputStream的java代码实现
时间: 2023-10-22 16:26:07 浏览: 86
下面是将 `FileOutputStream` 转换为 `ByteArrayOutputStream` 的 Java 代码实现:
```java
import java.io.*;
public class Main {
public static void main(String[] args) {
try {
// 创建一个FileOutputStream对象
FileOutputStream fos = new FileOutputStream("input.txt");
// 写入数据到文件
fos.write("Hello, World!".getBytes());
// 关闭文件输出流
fos.close();
// 创建一个ByteArrayOutputStream对象
ByteArrayOutputStream baos = new ByteArrayOutputStream();
// 创建一个字节数组作为缓冲区
byte[] buffer = new byte[1024];
// 创建一个FileInputStream对象
FileInputStream fis = new FileInputStream("input.txt");
// 读取文件内容到ByteArrayOutputStream
int len;
while ((len = fis.read(buffer)) != -1) {
baos.write(buffer, 0, len);
}
// 关闭文件输入流
fis.close();
// 将ByteArrayOutputStream转换为字节数组
byte[] byteArray = baos.toByteArray();
// 打印字节数组内容
System.out.println(new String(byteArray));
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
以上代码会将字符串 "Hello, World!" 写入到名为 "input.txt" 的文件中,并将文件内容读取到 `ByteArrayOutputStream` 中,最后将 `ByteArrayOutputStream` 转换为字节数组并打印出来。请确保代码中的文件路径是正确的。