自定义spark csv行终止符

Kri*_*ddy 5 export-to-csv pyspark databricks

我正在使用 pyspark 代码使用下面的代码从数据帧生成 csv,

df.repartition(1).write.format('com.databricks.spark.csv').option("header","true").mode("overwrite").save("/user/test")
Run Code Online (Sandbox Code Playgroud)

但是,当我打开并在记事本++中看到行终止符时,它带有默认行终止符“\n”。我尝试过不同的选项,例如 textinputformat 记录分隔符集等,但没有运气。有没有办法在 Spark 中将数据帧导出到 csv 时自定义此 EOL?实际上我需要使用 CRLF ("\r\n") 自定义此 EOL。感谢任何帮助。谢谢。

Luc*_*usa 0

您可以使用该lineSep选项将单个字符设置为行分隔符。

(
 df.repartition(1).write.format('com.databricks.spark.csv')
 .option("header", "true")
 .mode("overwrite")
 .option("lineSep", "^")
 .save("/user/test")
)
Run Code Online (Sandbox Code Playgroud)

文档来源:https://spark.apache.org/docs/latest/sql-data-sources-csv.html#data-source-option