【大纲】
【正文】
1.异常处理
1.1.【结论】捕获异常继续运行
try{
可能会出问题的代码
}catch{
case e:异常类型1 => 出现异常时要执行的代码
case e:异常类型2 => 出现异常时要执行的代码
}finally{
不管是否出现异常,一定会执行的代码
}
1.2.【结论】抛出异常终止运行
if(age < 18)
throw new Exception("未成年勿入!")
// println("我这行代码永远执行不到")
else
println("OK")
2.【结论】Source读取数据
0.Source类扩展自Iterator[Char]
1.包
import scala.io.Source
2.1.【结论】按行读取
示例
# 需求:
在当前scala项目下,创建data文件夹,内部创建1.txt文件,内容:
好好学习, 天天向上!
Hadoop, Zookeeper, Flume, Spark
Flink, Sqoop, HBase
键盘敲烂, 年薪百万!
以行为单位,读取该文本文件中的数据,并打印
# 实现:
object Source1 {
def main(args: Array[String]): Unit = {
import scala.io.Source
val source = Source.fromFile("./data/1.txt", "UTF-8")
val lines = source.getLines()
lines.foreach(println(_))
source.close() // 注意:一定要关闭Source对象
}
}
2.2.【结论】按字符读取
示例
# 需求:
在当前scala项目下,创建data文件夹,内部创建1.txt文件,内容:
好好学习, 天天向上!
Hadoop, Zookeeper, Flume, Spark
Flink, Sqoop, HBase
键盘敲烂, 年薪百万!
以字符为单位,读取该文本文件中的数据,并打印
# 实现:
object Source1 {
def main(args: Array[String]): Unit = {
import scala.io.Source
val source = Source.fromFile("./data/1.txt", "UTF-8")
val bufferedIter = source.buffered
while(bufferedIter.hasNext)