Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在HDFS中获取特定目录模式的目录列表,并使用Java选择最新目录?_Java_Hdfs - Fatal编程技术网

如何在HDFS中获取特定目录模式的目录列表,并使用Java选择最新目录?

如何在HDFS中获取特定目录模式的目录列表,并使用Java选择最新目录?,java,hdfs,Java,Hdfs,我需要使用模式从HDFS获取最新目录。这是我想出来的,但这不起作用 目录将类似于/mnt/output/10000000\u DATA\u 10222019\u 001\u RETRY\u FileSystem fs=FileSystem.get(hdfsConfig); 路径srcPath=新路径(“/mnt/output/10000000\u DATA\u 10222019\u 001*”; 列表路径=新的ArrayList(); RemoteIterator fileIter=fs.lis

我需要使用模式从HDFS获取最新目录。这是我想出来的,但这不起作用

目录将类似于
/mnt/output/10000000\u DATA\u 10222019\u 001\u RETRY\u

FileSystem fs=FileSystem.get(hdfsConfig);
路径srcPath=新路径(“/mnt/output/10000000\u DATA\u 10222019\u 001*”;
列表路径=新的ArrayList();
RemoteIterator fileIter=fs.listFiles(新路径(String.valueOf(srcPath)),
正确的);
while(fileIter.hasNext()){
字符串filePath=fileIter.next().getPath().toString();
System.out.println(文件路径);
}

有谁能在这里指导我如何正确操作。

最新目录是什么意思?目录的最新时间戳或目录名中的时间戳?@目录名中的日期您没有几个名称中具有相同日期的目录吗<代码>“/mnt/output/10000000\u DATA\u 10222019\u 001*”看起来像……不,目录名中的日期将不同,它将不同。我只需要选择一个最新的日期您使用的Hadoop版本是什么?
FileSystem fs = FileSystem.get(hdfsConfig);
Path srcPath = new Path("/mnt/output/10000000_DATA_10222019_001*");
List<String> paths = new ArrayList<>();
RemoteIterator<LocatedFileStatus> fileIter = fs.listFiles(new Path(String.valueOf(srcPath)),
                                                            true);

while (fileIter.hasNext()) {
    String filePath = fileIter.next().getPath().toString();
    System.out.println(filePath);
}