火花镶木地板转换问题与文件中的格式错误的行

时间:2017-05-25 02:47:51

标签: scala apache-spark

我有一个" \ u0001"带有镶嵌转换的spark的分隔文件读取,并且我没有任何架构问题,但是,数据之间没有引用引号(")。我尝试了不同的解决方案,但无法解决任何问题。

val df = sparkSession.sqlContext.read
    .format("com.databricks.spark.csv")
    .option("delimiter", "\u0001")
    //.option("quote", "\"")
    //.option("quote", null)
    //.option("quoteMode", "ALL")
    .option("header", "false")
    .option("mode","FAILFAST")
    .option("treatEmptyValuesAsNulls","true")
    .option("nullValue"," ")
    .option("ignoreLeadingWhiteSpace", "true")
    .option("ignoreTrailingWhiteSpace", "true")
    .schema(schema)
    .load(fileLocation)

提前致谢并感谢您的帮助

1 个答案:

答案 0 :(得分:0)

您可以使用sparkContext.hadoopConfiguration.set("textinputformat.record.delimiter","\u0001")

并读作textFile

val sentences = sparkContext.textFile(directoryPath)