【问题标题】:neo4j "csv load" extra characterneo4j“csv 加载”额外字符
【发布时间】:2014-07-21 13:35:11
【问题描述】:

1) 我有一个包含 7 种语言的简单 csv 文件。文件内容如下:

2) 我用这个命令成功导入了所有 7 种语言:

LOAD CSV FROM 'file:C:/Language.csv' AS line
MERGE (l:Language { Name: line[0] })
RETURN l.Name AS Language

3) 导入后,“土耳其语”的查询不返回任何结果

match (l: Language {Name:'Turkish'}) return l

4) 但是,对其他语言的查询会返回正确的结果。即:希腊语

match (l: Language {Name:'Greek'}) return l

5) 我怀疑有一个额外的隐形角色。此查询有效:

match (l: Language)
where l.Name =~ '.*Turkish*.'
return l

问题:为什么会这样?

其他 Google Chrome 响应屏幕截图:

【问题讨论】:

  • Mustafa,您能否提供一个链接,我们可以在其中获取 CSV 文件?
  • 您好吉姆,感谢您的回答。我刚刚发现了问题。我的文件是用 BOM 格式化的。当我将它保存为“没有 BOM 的 UTF-8”时,问题就解决了。我想知道是否有一个选项可以让 neo4j 也适用于带有 BOM 的文件。
  • Mustafa,没有让 Neo4j 识别初始 BOM 字段的选项,但是您可以在文件中添加标题行吗?您可以使用“LOAD CSV WITH HEADER”,否则请按原样保留您的 Cypher 语句。

标签: csv neo4j cypher


【解决方案1】:

我已将问题确定为我的 csv 文件是“带有 BOM 的 UTF-8”。当我将它保存为“UTF-8 without BOM”时,问题就解决了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-22
    相关资源
    最近更新 更多