0


使用Java API对HDFS进行如下操作:文件的创建、上传、下载以及删除等操作

  1. HDFS-JAVA接口:上传文件

将一个本地文件(无具体要求)上传至HDFS中的/hdfs-test路径下(如无此路径,新建一个)。

新建路径:

首先在路径/usr/test/ 下新建test.txt,指令为:/usr/test/test.txt,然后进行上传操作。

package org.apache.hadoop.examples;
import java.io.FileInputStream;
public class module_info {

    public static void main(String[] args) throws Exception {
        Configuration conf=new Configuration();
        URI uri=new URI("hdfs://192.168.46.xxx:9000");
        FileSystem fs=FileSystem.get(uri,conf,"hadoop");
        Path src=new Path("/usr/test/test.txt");
        Path dst=new Path("/hdfs-test/test.txt");
        fs.copyFromLocalFile(src, dst);
        fs.close();
        System.out.println("Upload Successfully!");
        // TODO Auto-generated method stub

    }

}

** 2.HDFS-JAVA接口:创建文件**

在HDFS中的/hdfs-test路径下新建一个data.txt文件。

package org.apache.hadoop.examples1;
import java.io.FileInputStream;
public class CreateText {
    public static void main(String[] args) throws Exception{ 
        // TODO Auto-generated method stub
        Configuration conf = new Configuration();
        URI uri = new URI("hdfs://192.168.46.xxx:9000");
        FileSystem fs = FileSystem.get(uri, conf, "hadoop");
        Path path = new Path("/hdfs-test/data.txt");
        FSDataOutputStream newFile = fs.create(path, true); 
        newFile.writeBytes("hello"); 
        newFile.close(); 
        fs.close();
    }
}

查询发现/hdfs-test路径下新建了一个data.txt文件

输入指令查看文件内容

** 3.HDFS-JAVA接口:下载文件**

将HDFS中的/hdfs-test/data.txt文件下载到本地任一路径下。

package org.apache.hadoop.examples;
import java.net.URI;
public class DownloadText {
    public static void main(String[] args) throws Exception {
        Configuration conf=new Configuration();
        URI uri=new URI("hdfs://192.168.46.xxx:9000");
        FileSystem fs=FileSystem.get(uri,conf,"hadoop");
        Path src=new Path("/hdfs-test/data.txt");
        Path dst=new Path("/usr/test/data.txt");
        fs.copyToLocalFile(false,src,dst,true);
        fs.close();
        System.out.println("Download Successfully!");
        // TODO Auto-generated method stub
    }
}

根据路径/usr/test/data.txt查看内容,发现下载的文件data.txt

** 4.HDFS-JAVA接口:删除文件**

将HDFS中/hdfs-test路径下的data.txt删除。

package org.apache.hadoop.examples;
import java.net.URI;

public class DeleteTxt {
    
    public static void main(String[] args) throws Exception {
        Configuration conf=new Configuration();
        URI uri=new URI("hdfs://192.168.46.xxx:9000");
        FileSystem fs=FileSystem.get(uri,conf,"hadoop");
        Path path=new Path("/hdfs-test/data.txt");
        fs.delete(path);
        fs.close();
        System.out.println("Delete File Successdully!");
        
        // TODO Auto-generated method stub
    }
}
标签: java hdfs hadoop

本文转载自: https://blog.csdn.net/m0_74972727/article/details/129868775
版权归原作者 马龙强_ 所有, 如有侵权,请联系我们删除。

“使用Java API对HDFS进行如下操作:文件的创建、上传、下载以及删除等操作”的评论:

还没有评论