我试图通过以下方法列出emr hdfs目录中的所有文件:
val directory = new File(directoryPath)
val fileStatusListIterator: RemoteIterator[LocatedFileStatus] = FileUtils.fs.listFiles(new Path(directoryPath), true)
while (fileStatusListIterator.hasNext) {
val fileStatus = fileStatusListIterator.next
if (fileStatus.isFile) {
log.info(s"Iterator File Path: ${fileStatus.getPath}")
}
}
我的问题:它列出了除csv文件以外的所有内容。
答案 0 :(得分:1)
我找到了原因。因为我正在上市前准备好下载这个csv文件。这意味着该文件无法按时从迭代器中捕获。因此,我必须使用:
Future.Await(Downloading,Duration.Inf)
因此它将被迫等到下载完成然后它将继续。