开发者

How do I use Scala to parse CSV data with empty columns?

开发者 https://www.devze.com 2023-03-19 20:04 出处:网络
The raw data looks like the following: YAPM1,20100901,23:36:01.563,Quote,,,,,,,4563,,,,,, YAPM1,20100901,23:36:03.745,Quote,,,,,4537,,,,,,,,

The raw data looks like the following:

YAPM1,20100901,23:36:01.563,Quote,,,,,,,4563,,,,,,
YAPM1,20100901,23:36:03.745,Quote,,,,,4537,,,,,,,,

The first row has extra empty开发者_如何学JAVA columns. I parse the data as follows:

val tokens = List.fromString(line, ',')

The result:

List(YAPM1, 20100901, 23:36:01.563, Quote, 4563)
List(YAPM1, 20100901, 23:36:03.745, Quote, 4537)

At the moment there is no way of using the resulting Lists to deduce which rows had the extra columns. How do I do this?


Use string split and pass -1 as the second argument!

scala> "a,b,c,d,,,,".split(",")
res1: Array[java.lang.String] = Array(a, b, c, d)

scala> "a,b,c,d,,,,".split(",", -1)
res2: Array[java.lang.String] = Array(a, b, c, d, "", "", "", "")

FYI List fromString is deprecated in favor of string split.

0

精彩评论

暂无评论...
验证码 换一张
取 消