You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Databricks Autoloader读取以§为分隔符的CSV文件

解决Spark Autoloader读取以“§”为分隔符的文本文件问题

你遇到的核心问题是参数拼写错误:代码里写的delimeter是错误的,正确的参数名是delimiter(少了一个字母i),这直接导致分隔符配置不生效。

修正后的代码示例

先修正参数拼写,同时保留编码配置(如果文件确实是Cp1252编码):

val df = spark.readStream.format("cloudFiles")
  .option("cloudFiles.format", "csv")
  .option("delimiter", "§") // 修正为正确的参数名delimiter
  .option("encoding", "Cp1252")
  .option("header", "false")
  .schema(schema)
  .load("path-to-the-csv-file")

备选方案:使用Unicode转义字符

如果直接写§有编码兼容问题,可以用Java风格的Unicode转义符\u00A7来指定分隔符:

val df = spark.readStream.format("cloudFiles")
  .option("cloudFiles.format", "csv")
  .option("delimiter", "\u00A7") // 用Unicode转义替代直接输入§
  .option("encoding", "Cp1252")
  .option("header", "false")
  .schema(schema)
  .load("path-to-the-csv-file")

额外验证步骤

  1. 先使用批处理读取(spark.read而非spark.readStream)测试配置是否生效,排除流处理的其他潜在问题。
  2. 确认文件的实际编码是否为Cp1252,如果文件是UTF-8编码,需将encoding参数改为UTF-8。

内容的提问来源于stack exchange,提问作者beingmanny

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 04:27:02