遍历 HDFS 中所有文件

递归遍历

@Test
public void listFile() throws Exception{FileSystem fileSystem = FileSystem.get(new URI("hdfs://192.168.52.100:8020"), new Configuration());FileStatus[] fileStatuses = fileSystem.listStatus(new Path("/"));for (FileStatus fileStatus : fileStatuses) {if(fileStatus.isDirectory()){Path path = fileStatus.getPath();listAllFiles(fileSystem,path);}else{System.out.println("文件路径为"+fileStatus.getPath().toString());
​}}
}
public void listAllFiles(FileSystem fileSystem,Path path) throws  Exception{FileStatus[] fileStatuses = fileSystem.listStatus(path);for (FileStatus fileStatus : fileStatuses) {if(fileStatus.isDirectory()){listAllFiles(fileSystem,fileStatus.getPath());}else{Path path1 = fileStatus.getPath();System.out.println("文件路径为"+path1);}}
}

使用 API 遍历

@Test
public void listMyFiles()throws Exception{//获取fileSystem类FileSystem fileSystem = FileSystem.get(new URI("hdfs://192.168.52.250:8020"), new Configuration());//获取RemoteIterator 得到所有的文件或者文件夹,第一个参数指定遍历的路径,第二个参数表示是否
要递归遍历RemoteIterator<LocatedFileStatus> locatedFileStatusRemoteIterator =
fileSystem.listFiles(new Path("/"), true);while (locatedFileStatusRemoteIterator.hasNext()){LocatedFileStatus next = locatedFileStatusRemoteIterator.next();System.out.println(next.getPath().toString());}fileSystem.close();
}

HDFS的API操作-获取文件列表信息相关推荐

  1. HDFS的API操作-小文件的合并

    小文件合并 由于 Hadoop 擅长存储大文件,因为大文件的元数据信息比较少,如果 Hadoop 集群当中有大量的小文件,那么每个小文件都需要维护一份元数据信息,会大大的增加集群管理元数据的内存压力, ...

  2. HDFS的API操作-获取FileSystem方式

    HDFS 的 API 操作 导入 Maven 依赖 <repositories><repository><id>cloudera</id><url ...

  3. 大数据之-Hadoop之HDFS的API操作_文件上传---大数据之hadoop工作笔记0056

    然后我们HDFS的java的api操作. 比如我们有个需求从mysql中把数据上传到完全分布式的集群中的,hdfs中 比如这里首先我们演示,把e盘下的banzhang.txt文件上传到完全分布式集群h ...

  4. 大数据之-Hadoop之HDFS的API操作_文件夹_以及文件删除案例---大数据之hadoop工作笔记0059

    然后我们再来看hdfs操作,删除文件夹 就上面这样写就可以了,但是可以看到有第二个参数 上面也有介绍了,源码中写, 如果这个参数设置为true的话,并且要删除的是个文件夹的话,那么 这个时候就不会抛出 ...

  5. 大数据之-Hadoop之HDFS的API操作_文件IO流_上传_案例---大数据之hadoop工作笔记0063

    然后我们来看一下HDFS的I/O流操作,这里我们实现文件上传. 这个是文档代码 我们自己写一写,分5步

  6. HDFS的API操作-创建文件和文件夹

    HDFS 上创建文件夹 @Test public void mkdirs() throws Exception{FileSystem fileSystem = FileSystem.get(new U ...

  7. 大数据之-Hadoop之HDFS的API操作_文件IO流_下载_案例---大数据之hadoop工作笔记0064

    我们再去实现,文件的下载,下载其实就是,文件输入流,是hdfs上面的文件,输出流是本地的文件,跟上传很像. 写完以后我们执行 先看看,本地没有banhua.txt对吧

  8. C/C++ 获取目录下的文件列表信息

    在C/C++编程时,需要获取目录下面的文件列表信息. 1.数据结构 struct dirent { long d_ino;                 /* inode number 索引节点号 ...

  9. 2021年大数据Hadoop(十二):HDFS的API操作

    2021大数据领域优质创作博客,带你从入门到精通,该博客每天更新,逐渐完善大数据各个知识体系的文章,帮助大家更高效学习. 有对大数据感兴趣的可以关注微信公众号:三帮大数据 目录 HDFS的API操作 ...

最新文章

  1. 内网安全新趋势之应对移动设备的威胁
  2. File errorchecker.pyx, line 17, in OpenGL_accelerate.errorchecker._ErrorChecker.__init__ (src\erro
  3. Android.自定义控件的实现 (转载)
  4. wince下获取mac地址的简单方法!
  5. 数据结构与算法--9.常见时间复杂度及其之间的关系
  6. adaptivitypara设置选0还是1_喝牛奶,选全脂还是低脂?家里人能不能喝同1种牛奶?...
  7. Java—Remove Deplicates from Sorted Array(顺序数组中去重位置)
  8. 【熊猫多模式站群开发日志】流程总览
  9. mysql 数据库视图_MySQL视图介绍
  10. java positive,Java DecimalStyle withPositiveSign()用法及代码示例
  11. 3D重建曼哈顿街景!谷歌开源Kartta Labs,使用深度学习和众包再现历史街景
  12. apache 禁用rc4_如何在Apache中禁用过时的TLS和SSL版本
  13. 第二课:电场与偶极子
  14. HTTP代理如何使用
  15. cocos lua 溶解_Cocos2d-x的lua官方加密的解密方法
  16. Django前端使用ECharts完成数据可视化
  17. 《逆流而上+阿里巴巴技术成长之路》 免费电子版
  18. 基本知识 100052
  19. 行存储和列存储的区别
  20. 计算机基础——计算机网络

热门文章

  1. 视图view的生命周期的一点见解
  2. struts2中拦截器的使用
  3. Windows8 64位运行Silverlight程序不能访问WCF的解决方案
  4. ADO的几种数据库连接方式
  5. Abstract Factory(抽象工厂)实践
  6. 【Lucene】Lucene的使用和优化
  7. 简单了解Python网络爬虫
  8. %@taglib prefix=c uri=http://java.sun.com/jsp/jst1/core%报错
  9. 《构建实时机器学习系统》一1.8 实时机器学习模型的生存期
  10. MyEclipse自定义servlet模板