例如,從以下文件:在Scala中,如何通過一對關鍵值在CSV中找到elemein?
Name,Surname,E-mail John,Smith,[email protected] Nancy,Smith,[email protected] Jane,Doe,[email protected] John,Doe,[email protected]
我怎麼李四的E-mail地址?
我現在用下面的代碼,但只能指定一個現在關鍵領域:
val src = Source.fromFile(file)
val iter = src.getLines().drop(1).map(_.split(","))
var quote = ""
iter.find(_(1) == "Doe" ) foreach (a => println(a(2)))
src.close()
我試着寫「iter.find(_(0)== 「約翰」 & & _( 1)==「Doe」)「,但是這會產生一個錯誤,說只有一個參數是預期的(將條件包含在額外的一對括號中並沒有幫助)。
如果這實際上是一個CSV文件,則使用StringOps.split(「,」)是錯誤的,並且不處理逗號(,)和/或雙引號(「)是嵌入式值。我剛纔在我的StackOverflow答案中解決了這個問題:http://stackoverflow.com/a/32488453/501113 – chaotic3quilibrium 2015-09-09 20:39:26