Arv*_*amy 5 scala apache-spark spark-csv
下面的代码没有添加默认的双引号。我还尝试使用选项添加 # 和单引号quote,但没有成功。我还使用了quoteModewithALL和NON_NUMERICoptions,输出仍然没有变化。
s2d.coalesce(64).write
.format("com.databricks.spark.csv")
.option("header", "false")
.save(fname)
Run Code Online (Sandbox Code Playgroud)
我可以尝试其他任何选择吗?我使用 spark-csv 2.11 而不是 spark 2.1。
它产生的输出:
d4c354ef,2017-03-14 16:31:33,2017-03-14 16:31:46,104617772177,340618697
Run Code Online (Sandbox Code Playgroud)
我正在寻找的输出:
“d4c354ef”,”2017-03-14 16:31:33”,”2017-03-14 16:31:46”,104617772177,340618697
Run Code Online (Sandbox Code Playgroud)
tl;dr启用quoteAll选项。
scala> Seq(("hello", 5)).toDF.write.option("quoteAll", true).csv("hello5.csv")
Run Code Online (Sandbox Code Playgroud)
以上给出了以下输出:
$ cat hello5.csv/part-00000-a0ecb4c2-76a9-4e08-9c54-6a7922376fe6-c000.csv
"hello","5"
Run Code Online (Sandbox Code Playgroud)
假设quote是"(请参阅CSVOptions)
然而,这不会给你“所有非数字字符周围的双引号”。对不起。
您可以在CSVOptions 中看到作为 CSV 读取器和写入器选项来源的所有选项。
pscom.databricks.spark.csv目前只是csv格式的别名。两者可以互换使用,但csv首选较短的。
ps 使用option("header", false)(false作为布尔值而不是字符串)这将使您的代码更加类型安全。
| 归档时间: |
|
| 查看次数: |
10112 次 |
| 最近记录: |