首页 > 其他 > 详细

Scala入门(四):文件操作

时间:2015-09-14 02:04:35      阅读:301      评论:0      收藏:0      [点我收藏+]
?
最近在做一个spark项目,顺便分享一下我的Scala入门过程。这一系列文章假定读者有一定的java或者其他面向对象编程语言基础。本文主要简单介绍文件的操作。

?

按惯例先上代码

val file = Source.fromFile("/Users/xiejing/Desktop/javascript")
for (line <- file.getLines()) {
  println(line)
}
file.close()

val webFile = Source.fromURL("https://www.baidu.com/");
webFile.foreach(print)
webFile.close

var javaWriter = new BufferedWriter(new FileWriter(new File("/Users/xiejing/Desktop/a.txt")))
for (i <- 4 to 10) {
  javaWriter.write(i.toString())
}
javaWriter.flush()
javaWriter.close()

?

scala.io.Source.fromFile读取文件,?getline获得一个iterator,遍历获取每一行,比Java方便多了。但这里有个问题,由于getline获得的是iterator,一旦你使用它完成遍历,iterator就失效了,所以如果需要反复的遍历文件,推荐Source.fromFile(...).getLines.toList,将文件内容转化为List,可以反复遍历,但代价是内存的消耗。

?

我们也可以用Source.fromURL来读取网络文件。

?

由于Scala运行在JVM上,因此可以无障碍的使用Java的类库,所以你可以使用java.io这个库来读取文件。

Scala入门(四):文件操作

原文:http://kane-xie.iteye.com/blog/2243023

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!