У меня есть файл CSV с разрывом строки в кавычках в третьей строке (первая строка - заголовок CSV).
data / testdata.csv
"id", "description"
"1", "some description"
"2", "other description with line
break"
Независимо от того, правильный ли он CSV или нет, я должен разобрать его в действительные записи.Это то, что я пробовал
public class Main2 {
public static void main(String[] args) {
SparkSession spark = SparkSession.builder()
.master("local[4]")
.getOrCreate();
Dataset<Row> rows = spark
.read()
.format("csv")
.option("header", "true")
.load("data/testdata.csv");
rows
.foreach(row -> System.out.println(row));
}
}
И вывод такой, как показано ниже:
[1, "some description"]
[2, "other description with line]
[break",null]
Как видите, Spark обрабатывает break"
как новую запись и заполняет отсутствующие столбцы нулем.Вопрос в том, есть ли какая-либо опция для анализатора CSV в Spark, которая допускает такие разрывы строк?
Я попробовал приведенный ниже код ( ссылка ), но он не работает
Dataset<Row> rows = spark.read()
.option("parserLib", "univocity")
.option("multiLine", "true")
.csv("data/testdata.csv");