簡體   English   中英

Scala讀取文件並拆分並修改每一行

[英]Scala read file and split and modify each line

我是Scala的新手。 我想從文本文件中讀取行並拆分並對每行進行更改並輸出它們。

這是我得到的:

 val pre:String = " <value enum=\""
 val mid:String = "\" description=\""
 val sur:String = "\"/>"

 for(line<-Source.fromFile("files/ChargeNames").getLines){
    var array = line.split("\"")
    println(pre+array(1)+mid+array(3)+sur);
 }

它的工作原理是面向對象的編程方式,而不是函數式編程方式。

我想熟悉Scala,以便任何能夠以函數式編程方式更改代碼的人?

謝謝。

一次遍歷,沒有額外的記憶

 Source
  .fromFile("files/ChargeNames")
  .getLines
  .map { line =>
    //do stuff with line like
    line.replace('a', 'b')
  }
  .foreach(println)

@ziggystar表示 ,代碼更快一點

Source
  .fromFile("files/ChargeNames")
  .getLines
  .foreach { line =>
    //do stuff with line like
    println(line.replace('a', 'b'))
  }
val ans = for (line <- Source.fromFile.getLines) yield (line.replace('a', 'b')
ans foreach println

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM