我们正在尝试将文件从一个位置复制到另一个位置。我们成功将文件从一个位置移动到另一个位置。但是,我想仅将特定文件动态复制到另一个位置。
org.apache.hadoop.io.Writable
如果有人有样品,请提供给我......
答案 0 :(得分:1)
我会创建一个byte []缓冲区,将第一个文件内容读入缓冲区。然后创建第二个文件new File()为它提供你想要的路径,并将缓冲的数据输入到新文件中。
private static void copyFileUsingStream(File source, File dest) throws IOException {
InputStream is = null;
OutputStream os = null;
try {
is = new FileInputStream(source);
os = new FileOutputStream(dest);
byte[] buffer = new byte[1024];
int length;
while ((length = is.read(buffer)) > 0) {
os.write(buffer, 0, length);
}
} finally {
is.close();
os.close();
}
}
编辑:家庭作业应该进入称为缓冲区的字节数组的大小。 1024是标准的,但您可以调整值!
答案 1 :(得分:0)
它有一些很好的实用程序方法,用于检查FileUtils中的相等和复制文件和目录。
如果整个lib应该是矫枉过正的,请查看FileUtils-Class via grepcode:)