В настоящее время я новый студент Скале, глядя на Скале кодированиях помощи в разборе строки в случае класс,Scala разбор строки к случаю объекта
case class CategaryIds(id1: Long, id2: Long, id3: Long, secIds: Set[Long])
данные выглядят, как показано ниже представлены как свечи РД
600045,8114,31679,"{1:2:3:4}"
600034,8114,34526,
600056,8114,31679,"{1:2:3:4}"
попытался ниже код, бросает исключение arrayoutofbund исключение и NumberFormat исключение
val fields = line.split(",").map(_.trim);
CategaryIds(fields(0).toLong,fields(1).toLong,fields(2).toLong,fields(3).replace("{","").replace("}", "").split(":").map(_.toLong).toSet)}
Если есть лучший способ достичь этого, пожалуйста, поделитесь им
вы получаете arrayoutofbounds когда вы пытаетесь получить доступ к «полям (3)», когда в этом индексе нет элемента, как во втором элементе вашего RDD. –