对HDFS文件系统文件的读、写、删操作

来源:互联网 发布:python webservic 编辑:程序博客网 时间:2024/05/16 13:06

 HDFS文件系统是Hadoop的分布式文件系统,HadoopAPI中提供了一些方法,以便在编程的时候向HDFS中写入和读出文件。

下面通过一个例子来说明:

    public static void readAndWrite(){

       Configuration conf = new Configuration();//获得conf对象,以便能够获得配置文件的信息

       FileSystem fs;

           try {

              fs = FileSystem.get(

                     URI.create(conf.get("fs.default.name")), conf); 

//读取HDFS系统中的一个文件

           InputStream input =fs.open(new Path("/user/root/urlLib/ftpurl"));

byte [] b= new byte[1024];

            input.read(b, 0,b.length);       

            String s =new String(b);

            system.out.println(s);

             input.close();

//将刚刚读出来的字符串再写入到HDFS系统中

OutputStream out = fs.create(new Path(/user/root/urlLib/ftpurl2), true);

           out.write(s.getBytes());

           out.flush();

           out.close();

//user/root/urlLib/ftpurl这个文件删除

fs.delete(new Path("/user/root/urlLib/ftpurl") , true);

          

           } catch (IOException e) {

              // TODO Auto-generated catch block

              e.printStackTrace();

           }

}

这个过程和普通的文件读写类似,唯一不同的就是通过HadoopFileSystem来获取读写流,以便在读写的时候能够将文件写入到HDFS系统中。

原创粉丝点击