scala> /* | Method 1 : Using List #96 | */ | import scala.io.Source import scala.io.Source scala> val source = Source.fromFile("./data.txt") source: scala.io.BufferedSource = non-empty iterator scala> //Load the entire file into List scala> //Disadvatnage : Entire File is loaded into Memory scala> val lines = source.getLines().toList lines: List[String] = List(line 1, line 2, A long line....) scala> scala> /* | Method 2 : Using Iterator | */ | import scala.io.Source import scala.io.Source scala> val source = Source.fromFile("./data.txt") source: scala.io.BufferedSource = non-empty iterator scala> //An iterator can be iterated only once, after that it is spent scala> //Advantage : The complete file is not loaded into Memory scala> val iter = source.getLines() iter: Iterator[String] = non-empty iterator scala> for (line <- iter){ | println(line) | } line 1 line 2 A long line....