hdfs javaapi 操作

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import java.net.URI;

public abstract class HadoopDemo2 {

    static {
        System.setProperty("hadoop.home.dir", "D:\\soft\\hadoop\\hadoop-2.9.2");
    }

    static Configuration conf=new Configuration();
    static FileSystem fs;


    public static void main(String[] args) throws Exception {

       // create();
        put();
       // get();
        //testCopy();
    }
    //创建
    public static void create() throws Exception {
        fs=FileSystem.get(new URI("hdfs://star.com:9000"),conf,"hadoop");
        Path path = new Path("/test/input");
        fs.mkdirs(path);
    }

    //上传
    public static void put() throws Exception{
        // 第一个参数是本地windows下的文件路径 第二个参数是hdfs的文件路径
        fs.copyFromLocalFile(new Path("C:\\Users\\MACHENIKE\\Desktop\\sdfghgj.txt"), new Path("/"));
        // 关闭
        fs.close();
    }

    //下载
    public static void get() throws Exception {

        fs=FileSystem.get(conf);
        fs.copyToLocalFile(false,new Path("/sdfghgj.txt"), new Path("C:\\Users\\MACHENIKE\\Desktop"),true);
        fs.close();

    }

    public static void testCopy() throws Exception {
        fs=FileSystem.get(conf);
        fs.rename(new Path("/sdfghgj.txt"), new Path("/aaa.txt"));
        fs.close();
    }

}

你可能感兴趣的:(hdfs)