import java.io.File
import scala.io.Source
object Demo2 {
// 列出所有的files
private val files = new File(".").listFiles
//
private def filelines(file:File) = {
// 返回的类型是::List[String]
Source.fromFile(file).getLines().toList
}
// 显示文件的行数
private def showfilelines() = {
// 返回的类型是::List[String]
var file = new File("yhq.txt")
// 读取文件的某一行
println(Source.fromFile(file).getLines().toList(1))
}
// 显示所有 文件夹
def showFiles() = {
for(file<- files)
println(file)
}
def main(args: Array[String]): Unit = {
showFiles()
showfilelines()
var lineLengths =
for{
// 遍历文件
file<-files
if file.getName.endsWith(".txt")
// 遍历所有的行
line<-filelines(file)
// trim返回文件的副本,忽略文件中出現的空格
trimmedLine = line.trim
// 模糊匹配
if trimmedLine.matches(".*棒.*")
}
// 将读取到的内容放到yield中去
yield line+":合计"+trimmedLine.length()+"个字"
lineLengths.foreach(println)
}
}