(五)hadoop路径读取文件的通配符
来源:互联网 发布:淘宝虎扑伙伴是真的吗 编辑:程序博客网 时间:2024/05/17 21:41
一、通配符
Demo
public class myHdfsGlobe { public static void main(String[] args) throws IOException { // TODO Auto-generated method stub Configuration configuration = new Configuration(); FileSystem fileSystem = FileSystem.get(configuration); FileStatus[] fileStatus = fileSystem.globStatus(new Path("/hello[0-9]")); System.out.println(1); for (FileStatus fileStatus1 : fileStatus) { System.out.println("文件路径:" + fileStatus1.getPath()); System.out.println("块的大小:" + fileStatus1.getBlockSize()); System.out.println("文件所有者:" + fileStatus1.getOwner() + ":" + fileStatus1.getGroup()); System.out.println("文件权限:" + fileStatus1.getPermission()); System.out.println("文件长度:" + fileStatus1.getLen()); System.out.println("备份数:" + fileStatus1.getReplication()); System.out.println("修改时间:" + fileStatus1.getModificationTime()); } }}
二、PathFilter过滤
通配格式不是总能够精确地描述我们想要访问的文件集合。比如,使用通配格式排除一个特定的文件就不太可能。FileSystem中的listStatus()和globStatus()方法提供了可选的PathFilter对象,使我们能够通过编程方式控制匹配:
package org.apache.hadoop.fs; public interface PathFilter { boolean accept(Path path); }
PathFilter与java.io.FileFilter一样,是Path对象而不是File对象。
展示了一个PathFilter,用于排除匹配一个正则表达式的路径:
public class RegexExcludePathFilter implements PathFilter { private final String regex; public RegexExcludePathFilter(String regex) { this.regex = regex; } public boolean accept(Path path) { return !path.toString().matches(regex); } }
这个过滤器只留下与正则表达式不同的文件。我们将它与预先剔除一些文件集合的通配配合:过滤器用来优化结果。例如:
fs.globStatus( new Path("/2007/*/*"), new RegexExcludeFilter("^.*/2007/12/31$"))
阅读全文
1 0
- (五)hadoop路径读取文件的通配符
- hadoop输入路径读取文件的正则通配符
- Hadoop 和 spark 读取多个文件通配符规则(正则表达式)joe
- Hadoop和spark中读取文件通配符使用举例
- 分步学习Struts(五) XML文件读取路径问题
- hadoop 文件通配符
- Hadoop的整文件读取
- Java 文件路径的读取
- Java 文件路径的读取
- ClassLoader读取文件的路径
- [Hadoop]输入路径过滤,通配符与PathFilter
- pandas的read_csv()函数读取的文件路径问题
- java读取资源文件的五种方式 (转载)
- HDFS之globStatus()函数(用通配符匹配制定模式的路径)liststatus() (列出目录下的所有文件)
- spark 读取hadoop 格式的文件
- Hadoop Parquet File 文件的读取
- Struts2(五)---通配符映射
- JAVA读取文件的路径问题!
- Android ActivityManagerServices基本框架
- PHP 简单的商城网站功能原理
- 和为零的子矩阵-LintCode
- PHP基础知识篇(一)
- BZOJ1087 互不侵犯king(状压DP)
- (五)hadoop路径读取文件的通配符
- 150 多个 ML、NLP 和 Python 相关的教程
- Android Log的多场景使用
- 腾讯 TLC 大会半折票最后 1 天!!!
- 多条目加载
- 已知类,查找类所在jar包的pom引入
- 论文笔记 | 基于深度学习的乳腺转移瘤识别(Deep Learning for Identifying Metastatic Breast Cancer)
- 管理所有Filter
- python binascii 进制转换