使用缓冲区读取器

时间:2019-06-04 22:50:54

标签: scala bufferedreader

我在一个临时目录中有一个输入文件

我必须读取文件,然后走第二行,然后删除前两个单词,并将字符串保存在变量中。 我正在尝试使用bufferedReader而不是fromSource读取文件。

文件为doc.txt,如下所示

#doc source topic proportion ...
0 src/main/tempDir/new_corpus/0c3da178-2d99-453d-8d54-0ee4212f1ed8 186 0.005347593582886886 185 0.005347593582886886 184 0.005347593582886886 183 0.005347593582886886 182 0.005347593582886886 181 0.005347593582886886 180 0.005347593582886886 179 0.005347593582886886 178 0.005347593582886886 177 0.005347593582886886 176 0.005347593582886886 175 0.005347593582886886 174 0.005347593582886886 173 0.005347593582886886 172 0.005347593582886886 171 

我必须阅读“ 186 0.0053 ....”

我正在使用的代码是

val in = new BufferedReader(new FileReader("src/main/tempDir/doc.txt"))
val l: String = in.readLine()

但是从这里我无法获得想要的结果,请提出建议

1 个答案:

答案 0 :(得分:1)

in.readLine                        //skip 1st line
val l: String = in.readLine()
                  .split("\\s+")  //split on whitespace
                  .drop(2)
                  .mkString(" ")  //restore whitespace
//l: String = 186 0.005347593582886886 185 0.00...