jOa*_*sis 6 scala apache-spark
我正在尝试处理一个包含很多特殊字符的文件,例如德语元音变音(\xc3\xa4,\xc3\xbc,o)等,如下所示:
\n\nsc.hadoopConfiguration.set("textinputformat.record.delimiter", "\\r\\n\\r\\n") sc.textFile("/file/path/samele_file.txt")
但在阅读内容时,这些特殊字符无法识别。
\n\n我认为默认编码不是 UTF-8 或类似格式。我想知道是否有一种方法可以在此 textFile 方法上设置编码,例如:
\n\nsc.textFile("/file/path/samele_file.txt",mode="utf-8")`\nRun Code Online (Sandbox Code Playgroud)\n
小智 2
不可以,如果以UTF-8模式读取非UTF-8格式的文件,非ascii字符将无法正确解码。请将文件转换为UTF-8编码后再读取。您可以参考 读取不同格式的文件
context.hadoopFile[LongWritable, Text, TextInputFormat](location).map(
pair => new String(pair._2.getBytes, 0, pair._2.getLength, charset)
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11841 次 |
| 最近记录: |