Hadoop_HDFS_API 文件的下载、删除、更名和移动

文件下载

HdfsClient.java 中编写 textGet 函数用于本地从服务器上下载文件

关于 copyToLocalFile() 参数的解读:

image

参数一:是否在下载后删除源文件
参数二:源文件的路径(HDFS
参数三:目标地址路径(Win
参数四:否是开启本地校验 true -> 不开启校验

若开启本地校验会多出现一个 crc 文件

crc 循环冗余校验文件 用于校验文件是否正确完整

//下载操作 示例
@Test
public void textGet() throws IOException {
    fs.copyToLocalFile(false,new Path("hdfs://hadoop102/fii/uptext2.txt"),new Path("X:\\uptext2.txt"),true);
}

文件删除

HdfsClient.java 中编写 textRm 函数用于在服务器上删除文件

关于 delete() 参数的解读:

image

参数一:要删除的路径
参数二:是否递归参数

在删除非空目录时需要递归删除

//删除操作 示例
@Test
public void textRm() throws IOException {
    //删除文件
    fs.delete(new Path("hdfs://hadoop102/jdk-8u212-linux-x64.tar.gz"),false);//文件没必要递归

    //删除空目录
    fs.delete(new Path("hdfs://hadoop102/xiyouji"),false);//空目录也没必要递归

    //删除非空目录
    fs.delete(new Path("hdfs://hadoop102/xiyou"),true);//非空目录需要递归删除
}

文件的更名与移动

HdfsClient.java 中编写 textMv 函数用于文件的更名与移动

关于 rename 参数的解读:

image

参数一:原文件路径
参数二:目标文件路径和名称

//更名与移动示例
@Test
public void textMv() throws IOException {
    //更改文件名称
    fs.rename(new Path("/fii/uptext1.txt"),new Path("/fii/uptext2.txt"));

    //更改文件位置
    fs.rename(new Path("/fii/uptext1.txt"),new Path("/uptext1.txt"));

    //更改文件位置和名称
    fs.rename(new Path("/fii/uptext1.txt"),new Path("/uptext2.txt"));
}
posted @ 2021-08-05 19:07  莳曳  阅读(629)  评论(0)    收藏  举报