Dataframe 如何在通过sqlContext.read.format(“com.databricks.Spark.xml”)读取xml时在Spark数据帧中编码

Dataframe 如何在通过sqlContext.read.format(“com.databricks.Spark.xml”)读取xml时在Spark数据帧中编码,dataframe,character-encoding,Dataframe,Character Encoding,我有一个带有encoding=“UTF-8”的XML文件,它在一个元素中包含几个法语字母 示例Áudio 我无法通读XML sqlContext.read.format("com.databricks.spark.xml") .option("rowTag", "root_Tag") .load("file:/Users/test.xml"); 它显示了“_corrupt_record”,但如果我删除了法语字符,它的效果会非常好 我相

我有一个带有
encoding=“UTF-8”
的XML文件,它在一个元素中包含几个法语字母

示例<代码>Áudio

我无法通读XML

sqlContext.read.format("com.databricks.spark.xml")
               .option("rowTag", "root_Tag")
               .load("file:/Users/test.xml");
它显示了“_corrupt_record”,但如果我删除了法语字符,它的效果会非常好

我相信这个问题是因为编码。读取XML时如何在
sqlContext
中进行编码


我还通过读取在中使用
.option(“charset”,“UTF-8”)
进行了测试,但它不起作用。请帮助我解决问题。

我认为您需要使用小写字母(utf-8)指定选项。

我已通过在环境变量JAVA\u TOOL\u OPTIONS:-Dfile.encoding=UTF8中应用UTF8作为系统级解决了我的问题。它工作得很好。现在,我可以在spark DataFrame中读取整个xml了。我对西里尔字母字符(如\(utf 0x443))也有同样的问题,设置JAVA_工具_选项变量也很有效。谢谢@Deepan