fileoutputstream转inputstream
时间: 2023-04-25 08:01:43 浏览: 1516
InputStream与OutputStream及File间互转
3星 · 编辑精心推荐
FileOutputStream转换为InputStream的方法是使用ByteArrayOutputStream作为中间缓存,将数据从FileOutputStream写入ByteArrayOutputStream,然后再从ByteArrayOutputStream读取数据到InputStream中。
具体步骤如下:
1. 创建FileOutputStream对象,将数据写入文件中。
2. 创建ByteArrayOutputStream对象,将FileOutputStream中的数据读取到ByteArrayOutputStream中。
3. 创建ByteArrayInputStream对象,将ByteArrayOutputStream中的数据读取到ByteArrayInputStream中。
4. 最后使用InputStream对象读取数据即可。
示例代码如下:
```
FileOutputStream fos = new FileOutputStream("test.txt");
fos.write("Hello World!".getBytes());
fos.close();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len;
FileInputStream fis = new FileInputStream("test.txt");
while ((len = fis.read(buffer)) != -1) {
baos.write(buffer, , len);
}
fis.close();
ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
int data;
while ((data = bais.read()) != -1) {
System.out.print((char) data);
}
bais.close();
```
阅读全文