Java 在Apache Spark中解析Linux上的Windows CSV
我试图使用ApacheSpark解析来自Linux机器上Windows机器的CSV文件,但重音字符似乎无法识别Java 在Apache Spark中解析Linux上的Windows CSV,java,apache-spark,codepages,Java,Apache Spark,Codepages,我试图使用ApacheSpark解析来自Linux机器上Windows机器的CSV文件,但重音字符似乎无法识别 Dataset<Row> df = spark .read() .format("csv") .option("header", "true") .option("inferSchema", "true") .load("file.csv"); Dataset df=spark .读() .格式(“csv”) .选项(“标题”、“正
Dataset<Row> df = spark
.read()
.format("csv")
.option("header", "true")
.option("inferSchema", "true")
.load("file.csv");
Dataset df=spark
.读()
.格式(“csv”)
.选项(“标题”、“正确”)
.选项(“推断模式”、“真”)
.load(“file.csv”);
看起来你就快到了。尝试:
Dataset<Row> df = spark
.read()
.format("csv")
.option("header", "true")
.option("inferSchema", "true")
.option("encoding", "cp1252")
.load("file.csv");
Dataset df=spark
.读()
.格式(“csv”)
.选项(“标题”、“正确”)
.选项(“推断模式”、“真”)
.选项(“编码”、“cp1252”)
.load(“file.csv”);
您可以指定
编码
作为选项。对于Windows,它是cp1252。另一种方法是在文件被带到linux后,从终端中对该文件运行dos2unix
命令
dos2unix
这将确保从文件中删除回车字符,并使其对linux友好。cp1252=Windows?很可能。。。特别是如果您的文件来自Excel。