데이터가 리터럴 인 내 중첩 된 맵 예제입니다. 이 프로그램은 의도 한대로 작동합니다.스칼라 중첩 맵 - 처리 방법은 무엇입니까?
그러나 리터럴을 제거하고 위의 값을 csv 파일에서 읽고 싶습니다. 여기에 csv가 있습니다 :
Early,a,1
Early,b,2
Late,x,24
Late,y,25
다음은 csv를 읽고 리터럴을 사용하여 위의 프로그램과 유사한 방식으로 값을 인쇄하는 코드입니다.
val bufferedSource = io.Source.fromFile("mapt.csv")
val builder = StringBuilder.newBuilder
for (line <- bufferedSource.getLines) {
val cols = line.split(",").map(_.trim)
println(s"${cols(0)}|${cols(1)}|${cols(2)}")
var tmp = cols(0) // s"${cols(0)}"
val inner = scala.collection.mutable.Map.empty[String, Int]
inner(cols(1)) = cols(2).toInt
println(inner)
val outer = scala.collection.mutable.Map.empty[String, String]
outer(cols(0)) = inner
println(outer)
}
bufferedSource.close
내 코드가 작동하지 않습니다. 중첩 된 맵을 처리하는 방법에 대한 지침을 찾는 데 어려움을 겪고 있습니다. 나는 스칼라를 배우고있다. csv 파일 데이터에서 중첩 된지도를 만드는 제안에 감사드립니다. 대답, 아르 논에 대한
어떤 오류가 발생하고 있습니까? – mfirry
오류 스크린 샷을 추가했습니다. – Fred