Java使用InputStream和OutputStream复制文件

示例

我们可以使用循环将数据直接从源复制到数据接收器。在此示例中,我们同时从InputStream读取数据,并写入OutputStream。完成读写后,我们必须关闭资源。

public void copy(InputStream source, OutputStream destination) throws IOException {
    try {
        int c;
        while ((c = source.read()) != -1) {
            destination.write(c);
        }
    } finally {
        if (source != null) {
            source.close();
        }
        if (destination != null) {
            destination.close();
        }
    }
}