Hadoop api访问 01读取文件练习

//编译工具   eclipse  
import java.net.MalformedURLException;
import java.net.URL;  
public class FangWenDemo {
   static{
        URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());
   }
  /*  //此步需要加载Hadoop 源码jar包   不做具体说明    作用让Java识别hdfs协议  log4j也要导入到src下
    
    /**
     * 通过java.net.URL类访问读取HDFS数据
     * @throws Exception 
     * @throws IOException
     */
    public static void main(String[] args) throws Exception {
        URL _url = new URL("hdfs://msater:9000/wordcount/123.txt");  //新建一个url地址用于打开文件
        InputStream in =  _url.openStream();  //将这个文件以流的方式打开  并赋值到in中  到此时流中存储的就是集群中文件的内容
        ByteOutputStream out = new ByteOutputStream();  //新建一个输出流
        byte [] bb = new byte [1024];   //输出流的write方法需要一个用于承载输入流内容的容器 所以新建一个byte数组  用于存储流中的内容
        out.write(bb);  //到此时流中的内容已经完全到输出流out中了
        System.out.println(out.toString());  //将流中的内容使用tostring变成字符串并打印出来
        in.close();  //关流
        out.close();  */

        IOUtils.copyBytes(in, System.out, 4096,false);  //io工具  四个参数分别是   输入  输出  缓存大小 是否自动关流
        IOUtils.closeStream(in);


        
    }

猜你喜欢

转载自blog.csdn.net/xutao_ccu/article/details/84680423