要讀取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文件以正確編譯和運行這個程序。