2017-12-06 1 views
0

Scalaの使用ディレクトリ内のすべてのファイルを一覧表示してから、ファイルの属性を読み取ろうとしています。 私の場合、ファイル属性、作成日を読み取ろうとしています。 ファイルがローカルに存在し、いくつかの研究を行った後、私は以下のコードを使用して、Linuxでディレクトリ内のすべてのファイルを一覧表示することができました:ScalaのStream [java.io.File]にあるデータを照会するには?

import java.io.File 
import scala.collection.JavaConversions._ 

def getFileTree(f: File): Stream[File] = 
     f #:: (if (f.isDirectory) f.listFiles().toStream.flatMap(getFileTree) 
       else Stream.empty) 

val filesList = getFileTree(new File("/tmp/hive_audits/")) 

のfileListは、次の形式で作成されます。

files: Stream[java.io.File] = Stream(/tmp/hive_audits, ?) 

私はそれがコレクションの形であることを理解しました。しかし、私はどのようにディレクトリに存在するファイルを反復し、それの作成日を取得するような 'fileList'を照会する方法を理解することができません。 誰でも私にそれをどうすればいいのか教えてくれますか?

答えて

1

あなたはfor (file <- files) {...}でも.foreachを反復処理することができます

for (file <- files) println(new java.util.Date(file.lastModified)) 

java.io.File APIは、作成日をサポートしていません。