Hadoop FileSystem删除源文件

时间:2017-10-01 12:10:44

标签: hadoop hdfs

我使用以下方法将文件从本地PC上传到hdfs:

FileSystem fs = FileSystem.get(conf);
boolean deleteSrc = true;
String destFile = "/user/admin/my.csv";
fs.copyFromLocalFile(deleteSrc,new Path(inputFile), new Path(destFile));

这会导致文件从loca存储中删除。因此,副本实际上是一个“移动” 我如何上传本地文件的副本?

1 个答案:

答案 0 :(得分:1)

请注意,您将copyFromLocalFile调用的第一个参数设置为true,这会导致本地文件被删除。如果要保留本地文件,请将deleteSrc设置为false

以下是copyFromLocalFile方法的详细信息。

public void copyFromLocalFile(boolean delSrc,
                              boolean overwrite,
                              Path[] srcs,
                              Path dst)
                       throws IOException
     

src文件位于本地磁盘上。以给定的dst名称将其添加到文件系统。 delSrc指示是否应删除源

     

<强>参数:

delSrc - whether to delete the src
overwrite - whether to overwrite an existing file
srcs - array of paths which are source
dst - path
     

<强>抛出:

IOException - IO failure

您也可以参考this