我使用以下方法将文件从本地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存储中删除。因此,副本实际上是一个“移动” 我如何上传本地文件的副本?
答案 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。