温馨提示×

java中如何读取hadoop文件

小亿
109
2024-03-27 13:01:32
栏目: 编程语言

在Java中读取Hadoop文件可以通过Hadoop提供的API实现。以下是一个简单的示例代码,演示如何读取Hadoop文件:

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

public class ReadHadoopFile {
    public static void main(String[] args) {
        try {
            Configuration conf = new Configuration();
            FileSystem fs = FileSystem.get(conf);
            Path filePath = new Path("hdfs://<namenode>:<port>/path/to/hadoop/file");

            FSDataInputStream inStream = fs.open(filePath);

            byte[] buffer = new byte[1024];
            int bytesRead = 0;
            while ((bytesRead = inStream.read(buffer)) > 0) {
                System.out.write(buffer, 0, bytesRead);
            }

            inStream.close();
            fs.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

在上面的代码中,首先创建一个Configuration对象,并获取一个FileSystem实例。然后指定要读取的Hadoop文件的路径,使用open方法打开文件并获取到一个FSDataInputStream流。然后通过循环从流中读取数据,并输出到控制台。最后关闭流和文件系统对象。

需要注意的是,在实际使用中需要替换"hdfs://:/path/to/hadoop/file"为实际的Hadoop文件路径。

0