2017-01-25 10 views
0

私はファイルのリストを持っていると私は彼らが最終更新日に応じて変更Scala-最終更新日までにファイルをグループ化する方法は?

の年と月によると、私のような何かをしようとしたグループに希望:

val format = new SimpleDateFormat("yyyyMM") 
files.groupBy(f=> format.format((f.lastModified()))) 

filesはFile型のリストです。

私はこれを楽しみにしています...私の目標は、すべてのファイルを取り出し、最後の変更/作成の年月日に応じてフォルダに入れることです。作成時間のファイルがあるので、私は最後の変更を見ています)

+1

[この回答](http://stackoverflow.com/a/32955978/1870803)は、あなたが望むことをします。 –

+0

@YuvalItzchakov答えに感謝します。 Scalaの機能部品のパワーを使用するソリューションを見つけることを望んでいました – boaz

+0

* Scala *の機能部分のパワーを*使っているのはどういう意味ですか?これは、コンパレータとして単一のラムダ式を含むコードの1行です。私にはかなり良い見えます:)。 –

答えて

1

あなたが投稿したコードは、あなたが望むものとまったく同じです。これはあなたのファイルがリストにあると仮定すると、あなたにMap[String,List[File]]を与える

val grouped = files.groupBy(f=> format.format((f.lastModified()))) 

:あなたはそれに取り組むことができるようにちょうどいくつかの変数にGROUPBY操作の結果を割り当てます。キーはフォーマットされた日付(例:"201701")で、値はファイルのそれぞれのリストです。

関連する問題