Papa Parse 单列错误无法自动检测分隔符;默认为“,”

pan*_*nis 0 javascript papaparse angular

我有一个只有一列的 csv,我正在使用 Papa Parse 库来解析 csv。我收到以下错误Unable to auto-detect delimiting character; defaulted to ','

由于它只是一列,因此它不是逗号分隔值。我试图将 delimeter 配置属性设置为 autodelimiter: "",但仍然是同样的问题

Álv*_*lez 5

CSV 远非标准。即使有RFC,格式本身也早于文档,无论如何都以以下开头:

它没有指定任何类型的 Internet 标准。

此外,CSV 通常是由不关心互操作性的快速而肮脏的工具创建的。特别是,即使是像 Microsoft Excel 这样的知名工具,也会根据运行它的计算机的区域设置生成不同的文件格式!

所有这一切意味着,为了解析 CSV 文件,您需要确定确切的文件格式,特别是用于分隔不同列的字符:尽管 CSV 中的 C 代表逗号,但它只是与找到分号一样常见。根据软件功能,选项包括:

  • 告诉程序
  • 让程序猜

在您的情况下,猜测会出错,因为您只有一列,因此库可以找到的文件中没有任何分隔符。不过,该错误消息令人困惑,因为它暗示有一个默认分隔符 ( ,),但实际上并没有默认使用它。

由于猜测既不可能也不需要,只需明确告诉它使用,

{
    delimiter: "",  // auto-detect <--------- We don't want this!
    newline: "",    // auto-detect
    quoteChar: '"',
    header: false,
    dynamicTyping: false,
    preview: 0,
    encoding: "",
    worker: false,
    comments: false,
    step: undefined,
    complete: undefined,
    error: undefined,
    download: false,
    skipEmptyLines: false,
    chunk: undefined,
    fastMode: undefined,
    beforeFirstChunk: undefined,
    withCredentials: undefined
}
Run Code Online (Sandbox Code Playgroud)