5.4.2-3 编写Java程序读取HDFS文件
在本次实战中,我们通过Java程序实现了从Hadoop分布式文件系统(HDFS)读取文件的功能。首先,我们创建了ReadFileOnHDFS
类,并在其中实现了两个方法:read1()
和read1_()
。read1()
方法展示了如何打开HDFS文件并逐行读取内容,然后通过控制台显示。为了简化代码,read1_()
方法利用IOUtils.copyBytes
直接将文件内容输出到控制台。
接着,我们实现了read2()
方法,该方法将HDFS中的文件读取并保存到本地文件系统。这涉及到创建本地文件的输出流,并使用IOUtils.copyBytes
将数据从HDFS的输入流复制到本地文件的输出流中。
在测试这些方法之前,我们确保了HDFS上存在目标文件,并且在本地项目根目录下创建了download
目录用于存放下载的文件。运行read2()
方法后,我们在控制台确认了文件下载的信息,并在download
目录中查看了文件内容。
通过本次实战,我们掌握了从HDFS读取文件并保存到本地的完整流程,增强了对Hadoop文件操作的理解和应用能力。