美文网首页
Scala read file

Scala read file

作者: 天玑云象 | 来源:发表于2018-01-15 21:02 被阅读29次
// use loan pattern
// close resource after used
def using[A <: { def close(): Unit}, B]
      (resource: A)(f: A => B): B = {
  try {
    f(resource)
  } finally {
    resource.close()
  }
}

// use Option as return
def readTextFile(filename: String): Option[List[String]] = {
  try {
    val lines = using(Source.fromFile(filename)) {
      source =>
        source.getLines.toList
    }
    Some(lines)
  } catch {
    case e: Exception => None
  }
}

// print lines
val lines = readTextFile(filename).get
lines.foreach { line =>
  println(line)
}

相关文章

网友评论

      本文标题:Scala read file

      本文链接:https://www.haomeiwen.com/subject/yjadoxtx.html