我正在使用com.crealytics.spark.excel包读取 excel 文件。下面是在 spark java 中读取 excel 文件的代码。
Dataset<Row> SourcePropertSet = sqlContext.read()
.format("com.crealytics.spark.excel")
.option("location", "D:\\5Kto10K.xlsx")
.option("useHeader", "true")
.option("treatEmptyValuesAsNulls", "true")
.option("inferSchema", "true")
.option("addColorColumns", "false")
.load("com.databricks.spark.csv");
但我尝试使用相同的 (com.crealytics.spark.excel)包将数据集对象写入 spark java 中的 excel 文件。
SourcePropertSet.write()
.format("com.crealytics.spark.excel")
.option("useHeader", "true")
.option("treatEmptyValuesAsNulls", "true")
.option("inferSchema", "true")
.option("addColorColumns", "false").save("D:\\resultset.xlsx");
但我得到了错误。
java.lang.RuntimeException:com.crealytics.spark.excel.DefaultSource 不允许创建表作为选择。
甚至我也尝试过使用org.zuinnote.spark.office.excel包。下面是代码。
SourcePropertSet.write()
.format("org.zuinnote.spark.office.excel")
.option("write.locale.bcp47", "de")
.save("D:\\result");
我在pom.xml中添加了以下依赖项
<dependency>
<groupId>com.github.zuinnote</groupId>
<artifactId>hadoopoffice-fileformat</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>com.github.zuinnote</groupId>
<artifactId>spark-hadoopoffice-ds_2.11</artifactId>
<version>1.0.3</version>
</dependency>
但我得到了错误。
java.lang.IllegalAccessError: 试图访问方法 org.zuinnote.hadoop.office.format.mapreduce.ExcelFileOutputFormat.getSuffix(Ljava/lang/String;)Ljava/lang/String; 来自 org.zuinnote.spark.office.excel.ExcelOutputWriterFactory 类
请帮助我将数据集对象写入 spark java 中的 excel 文件。