当前位置:   article > 正文

彷徨 | HDFS客户端API编程基本java操作 | 二_第2关:hdfs java api编程——文件上传

第2关:hdfs java api编程——文件上传

一 : API编程查看文件内容

先上传一文件到HDFS

hadoop fs -put ./zhang /

查看文件是否传上去

hadoop fs -ls /

命令行客户端查看文件内容

用API编程查看文件内容

代码 : 

  1. // 读取HDFS中的文件的内容
  2. @Test
  3. public void testReadContent() throws Exception {
  4. Configuration conf = new Configuration();
  5. conf.set("fs.defaultFS", "hdfs://marshal:9000/");
  6. FileSystem fs = FileSystem.get(conf);
  7. FSDataInputStream in = fs.open(new Path("/zhang"));
  8. BufferedReader br = new BufferedReader(new InputStreamReader(in));
  9. String line=null;
  10. while((line=br.readLine())!=null) {
  11. System.out.println(line);
  12. }
  13. br.close();
  14. in.close();
  15. fs.close();
  16. }

结果 : 

二 : API编程读取HDFS中的文件的指定偏移量范围内的数据内容

上传一个文件zhang2

查看文件内容 : 

API编程产看文件偏移量指定内容

代码 : 

  1. // 读取HDFS中的文件的指定偏移量范围内的数据内容
  2. @Test
  3. public void testReadContent2() throws Exception {
  4. Configuration conf = new Configuration();
  5. conf.set("fs.defaultFS", "hdfs://marshal:9000/");
  6. FileSystem fs = FileSystem.get(conf);
  7. FSDataInputStream in = fs.open(new Path("/zhang2"));
  8. in.seek(60);
  9. ///qingshu.txt中的从60偏移量开始的数据,总共20个字节
  10. byte[] b = new byte[4];
  11. int read = -1;
  12. long count = 0;
  13. while((read=in.read(b))!=-1) {
  14. System.out.print(new String(b,0,read));
  15. count += read;
  16. if(count==20) {
  17. break;
  18. }
  19. }
  20. in.close();
  21. fs.close();
  22. }

结果 : 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/721867
推荐阅读
相关标签
  

闽ICP备14008679号