我有一个像这样的csv文件-
"id"^"first_name"^"last_name"^"email"^"gender"
"1"^"John"^"143 \\"^"[email protected]"^"Male"
"2"^"Willaim"^"Khan"^"[email protected]"^"Male"
如果我对此执行任何钻取查询,则会收到以下错误 -
UserRemoteException : DATA_READ ERROR: Unexpected character '101' following quoted value of CSV field. Expecting '94'. Cannot parse CSV input."
但是使用这样的 csv-
^id^|^first_name^|^last_name^|^email^|^gender^
^1^|^John^|^Bharadwaj \\^|^[email protected]^|^Male^
^2^|^Willaim^|^Khan^|^[email protected]^|^Male^
一切正常。
这是我在apacherill中对csv的dfs配置。我使用的是版本1.21.1-
“csv”:{“类型”:“文本”,“扩展名”:[“csv”],“lineDelimiter”:“ ", "fieldDelimiter": "^", "quote": """, "escape": "\", "comment": "#", "extractHeader": true }
当紧接在引用之前出现转义时,似乎存在一些问题。 我尝试将转义值更改为 ~ 并观察到同样的问题。 有什么见解吗?
看起来 Drill CSV 解析器只会使用配置的转义字符转义 引号字符,特别是,转义字符无法转义其自身的出现。我不确定为什么存在这个限制。