hadoop3.x HDFS java下载文件的源码分析 作者:马育民 • 2021-02-14 16:18 • 阅读:10160 # 介绍 上传文件到 HDFS,是通过 `FileSystem.copyToLocalFile()` 实现的,其底层调用如下图: [![](https://www.malaoshi.top/upload/pic/hadoop/QQ20210214162030.png)](https://www.malaoshi.top/upload/pic/hadoop/QQ20210214162030.png) # java代码 用上图底层代码实现下载文件: ``` @Test public void copyToLocalFile() throws Exception{ //获取文件系统 Configuration conf = new Configuration(); FileSystem fs = FileSystem.get(new URI("hdfs://localhost:9000"), conf, "root"); FileOutputStream out = null; try { //打开hdfs中的文件 FSDataInputStream in=fs.open(new Path("/data.txt")); //创建本地文件流 out=new FileOutputStream("d:/2.txt"); IOUtils.copyBytes(in, out, conf, true); } catch (IOException e) { IOUtils.closeStream(out); throw e; } fs.close(); } ``` 原文出处:http://malaoshi.top/show_1IXagztSKxU.html