久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

java如何將hdfs文件下載到本地

144次閱讀
沒有評論

共計 1245 個字符,預計需要花費 4 分鐘才能閱讀完成。

可以使用 FileSystem 類和 FSDataInputStream 類來實現將 HDFS 文件下載到本地。

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

public class DownloadHDFSFile {public static void main(String[] args) {try {Configuration conf = new Configuration();
            conf.set("fs.defaultFS", "hdfs://localhost:8020");
            FileSystem fs = FileSystem.get(conf);

            Path hdfsFilePath = new Path("/path/to/hdfs/file");
            Path localFilePath = new Path("/path/to/local/file");

            FSDataInputStream in = fs.open(hdfsFilePath);
            FSDataOutputStream out = new FSDataOutputStream(new FileOutputStream(localFilePath), null);

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

            in.close();
            out.close();
            fs.close();

            System.out.println("HDFS file downloaded successfully.");
        } catch (Exception e) {e.printStackTrace();
        }
    }
}

在上面的代碼中,首先創建了一個 Configuration 對象,設置了 HDFS 的配置信息。然后通過 FileSystem.get(conf) 方法獲取一個 FileSystem 對象,用來操作 HDFS 文件系統。

接著指定需要下載的 HDFS 文件的路徑 hdfsFilePath 和本地文件的路徑 localFilePath。使用fs.open(hdfsFilePath) 方法打開 HDFS 文件,并創建一個 FSDataOutputStream 對象來寫入本地文件。

然后使用一個循環讀取 HDFS 文件的內容,并寫入本地文件,直到文件讀取完畢。最后關閉輸入流、輸出流和文件系統對象,完成文件下載操作。

請注意,需要在項目中引入 Hadoop 的相關依賴包,以便能夠正常編譯和運行上面的代碼。

丸趣 TV 網 – 提供最優質的資源集合!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2024-04-07發表,共計1245字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 丰宁| 隆回县| 堆龙德庆县| 荆门市| 喀什市| 淅川县| 临沂市| 莆田市| 甘肃省| 堆龙德庆县| 宜都市| 海宁市| 疏附县| 南阳市| 瓮安县| 阿拉善盟| 栾川县| 师宗县| 灵山县| 阿克陶县| 岑巩县| 荣昌县| 宜春市| 疏附县| 巴彦县| 无为县| 吴桥县| 措美县| 开化县| 中宁县| 砀山县| 会同县| 荣昌县| 黄平县| 郴州市| 阿图什市| 西和县| 牟定县| 宁乡县| 寿宁县| 西和县|