将Java InputStream的内容写入OutputStream的简单方法

今天我很惊讶地发现,我无法找到用Java将InputStream的内容写入OutputStream的简单方法。显然,字节缓冲区代码并不难编写,但我怀疑我只是缺少了一些可以让我的生活更轻松(代码更清晰)的东西

那么,给定输入流输入输出流输出,有没有更简单的方法来编写以下内容

字节[]缓冲区=新字节[1024];
int len=in.read(缓冲区);
而(len!=-1){
out.write(缓冲区,0,len);
len=in.read(缓冲区);
}

正如WMR所提到的,来自apache的org.apache.commons.io.IOUtils有一个名为copy(InputStream,OutputStream)这正是您想要的

因此,你有:

输入流输入;
输出流输出;
IOUtils.copy(输入、输出);
in.close();
out.close();

…在您的代码中

您避免使用IOUtils有什么原因吗

发表评论