■ はじめに
Scala の ファイル名・パスの扱いについて書き溜めていく
【1】ファイル名取得
import java.io._ val targetPath = "s3://your-bucket/hello/world/test.csv" val targetFile = new File(targetPath) val fileName = targetFile.getName() // File Name = test.csv print(s"File Name = ${fileName}")
http://simplesandsamples.com/basename.scala.html
応用編
import java.io._ object Main extends App { val list = Seq( "s3://your-bucket/xx/sample02.sql", // Hit "s3://your-bucket/xx/sample.txt", "s3://your-bucket/yyy/demo1.sql", // Hit "s3://your-bucket/", "s3://your-bucket/xx/sample01.sql", // Hit "s3://your-bucket/yyy/", "s3://your-bucket/aaa/hello", "abc", "", "s3://your-bucket/bbb/abc.hql" ) val results = list.filter( path => new File(path).getName().endsWith(".sql") ) for (result <- results.sorted) { println(result) } } /* Output s3://your-bucket/xx/sample01.sql s3://your-bucket/xx/sample02.sql s3://your-bucket/yyy/demo1.sql */
関連記事
Scala ~ 環境構築編 ~
https://dk521123.hatenablog.com/entry/2023/03/10/193805
Scala ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/03/12/184331
Scala ~ 基本編 / メソッド ~
https://dk521123.hatenablog.com/entry/2023/03/03/000000
Scala ~ 基本編 / クラス ~
https://dk521123.hatenablog.com/entry/2023/03/14/000857
Scala ~ 基本編 / コレクション ~
https://dk521123.hatenablog.com/entry/2023/03/13/000345
Scala ~ 基本編 / 日付・日時 ~
https://dk521123.hatenablog.com/entry/2023/03/08/000000
Scala ~ YAML ~
https://dk521123.hatenablog.com/entry/2023/03/16/012034
Java
パス・ファイルの扱い
https://dk521123.hatenablog.com/entry/2010/01/12/091848