温馨提示×

java怎么读取hdfs文件内容

小亿
216
2024-06-05 14:02:27
栏目: 编程语言

要读取HDFS文件内容,可以使用Hadoop的FileSystem API来实现。以下是一个简单的Java程序示例,演示如何读取HDFS文件内容:

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class ReadHDFSFile {

    public static void main(String[] args) {
        try {
            Configuration conf = new Configuration();
            FileSystem fs = FileSystem.get(conf);

            Path filePath = new Path("/path/to/hdfs/file");
            FSDataInputStream inputStream = fs.open(filePath);

            BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }

            reader.close();
            fs.close();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

在这个示例中,首先创建了一个Hadoop配置对象,并获取了HDFS文件系统的实例。然后打开指定的HDFS文件,创建一个输入流并将其包装在BufferedReader中,逐行读取文件内容并打印到控制台。最后关闭输入流和文件系统对象。

记得将/path/to/hdfs/file替换为你想要读取的HDFS文件的路径。确保你的Java项目中包含了Hadoop相关的JAR文件以正确编译和运行这个程序。

0