FileSystem提供了一个copyToLocalFile()函数,可以将HDFS文件系统中的文件下载到操作系统本地。例如,将HDFS文件系统根目录的文件newfile.txt下载到windows系统中D盘根目录,并重命名为new.txt,代码如下:
public static void copyToLocalFile() throws Exception{ //1.创建配置器 Configuration conf = new Configuration(); conf.set("fs.default.name", "hdfs://192.168.170.128:9000"); //2.取得FileSystem文件系统实例 FileSystem fs = FileSystem.get(conf); //3.创建可供hadoop使用的文件系统路径 Path src = new Path("hdfs:/newfile2.txt");//目标目录/文件 Path dst = new Path("D:/new.txt"); //本地目录/文件 //4.从HDFS文件系统中拷贝下载文件(目标路径,本地文件)至本地 fs.copyToLocalFile(false,src,dst,true); System.out.println("文件下载成功!"); }原创文章,转载请注明出处!!