二进制读取文件:
val file = new File("F:\scalaWorkspace\ScalaLearning\files\test.txt") val in = new FileInputStream(file) val bytes = new Array[Byte](file.length().toInt) in.read(bytes) in.close()
写文件:
val out = new PrintWriter("F:\scalaWorkspace\ScalaLearning\files\test2.txt") for (i <- 1 to 100) out.println(i) out.close()
访问目录:
def subdirs(dir: File): Iterator[File] = { val children = dir.listFiles.filter(_.isDirectory()) children.toIterator ++ children.toIterator.flatMap(subdirs _) } val dir = new File("F:\scalaWorkspace\ScalaLearning") for(el <- subdirs(dir)){ println(el.getAbsolutePath) }
运行结果:
F:scalaWorkspaceScalaLearning.settings
F:scalaWorkspaceScalaLearningin
F:scalaWorkspaceScalaLearningfiles
F:scalaWorkspaceScalaLearningsrc
序列化:
@SerialVersionUID(18L) class Animal extends Serializable { val id: Int = 1 val name1: String = "Animal" }