zoukankan      html  css  js  c++  java
  • 使用hadoop的类操作HDFS

    1. 创建文件夹

        private static final String PATH = "hdfs://hadoop:9000/";
        private static final String DIR = "/d2";
        
        public static void main(String[] args) throws Exception 
        {
            FileSystem fileSystem = FileSystem.get(new URI(PATH), new Configuration());
            fileSystem.mkdirs(new Path(DIR));
        }

     2.上传文件

            private static final String PATH = "hdfs://hadoop:9000/";
    	private static final String FILE = "/d2/hello";
    	
    	public static void main(String[] args) throws Exception 
    	{
    		FileSystem fileSystem = FileSystem.get(new URI(PATH), new Configuration());
    		FSDataOutputStream out = fileSystem.create(new Path(FILE));
    		FileInputStream in = new FileInputStream("D:/readme.txt");
    		IOUtils.copyBytes(in, out, 1024, true);
    	}
    

    3.下载文件

        private static final String PATH = "hdfs://hadoop:9000/";
        private static final String FILE = "/d2/hello";
        
        public static void main(String[] args) throws Exception 
        {
            FileSystem fileSystem = FileSystem.get(new URI(PATH), new Configuration());
            FSDataInputStream in = fileSystem.open(new Path(FILE));
            IOUtils.copyBytes(in, System.out, 1024,true);
        }

     4.浏览文件夹

    private static final String PATH = "hdfs://chaoren:9000/";
        
        public static void main(String[] args) throws Exception 
        {
            FileSystem fileSystem = FileSystem.get(new URI(PATH), new Configuration());
            FileStatus[] listStatus = fileSystem.listStatus(new Path("/"));
            
            for(FileStatus status : listStatus) 
            {
                String isDir = status.isDir()?"文件夹":"文件";
                String path = status.getPath().toString();
                long length = status.getLen(); 
                System.out.println(isDir + "	" + length + "	" + path);
            }
        }

    5.删除文件夹

            private static final String PATH = "hdfs://hadoop:9000/";
        private static final String DIR = "/d3";
        
        public static void main(String[] args) throws Exception 
        {
            FileSystem fileSystem = FileSystem.get(new URI(PATH), new Configuration());
            fileSystem.delete(new Path(DIR), true);
        }

     

  • 相关阅读:
    html常用标签及示例
    判断一个数是否是素数的讨论
    图像的空间域变化
    图像增强的点运算(一)
    字符串匹配——KMP
    AcWing1134最短路计数(spfa)
    AcWing1137拯救大兵瑞恩(双端队列搜索,状态压缩,分层图最短路)
    AcWing1175电路维修(双端队列+搜索)
    AcWing1137选择最佳线路(最短路)
    AcWing342道路与航线(dijkstra+拓扑排序)
  • 原文地址:https://www.cnblogs.com/lzxl/p/4232607.html
Copyright © 2011-2022 走看看