neo4j - 如何使用 cypher-shell (Windows) 将包含变音符号的密码脚本 (UTF-8) 通过管道传输到 neo4j?
问题描述
Cypher 脚本“Umlauts.cypher”(UTF-8,在 Windows 环境中创建)包含一个用于导入包含一些变音符号的“变音符号对象”的事务:
:BEGIN
CREATE(:Umlautobj{text:"ÄäÖöÜü"});
:COMMIT
对于管道脚本(Windows 环境),在 cmd-shell 中使用以下代码
TYPE Umlauts.cypher|cypher-shell.bat -u neo4 - p secret
现在,我尝试使用 Cypher-Query(Firefox-Browser) 从新节点获取文本信息:
MATCH (n:Umlautobj) RETURN n.text
我得到:
“ÄäÖöÜü”
但我希望得到:
“ÄäÖöüü”
如何正确导入变音符号?
【Windows 10、neo4j-community 3.5.15、neo4j-DB在同一台机器上】
解决方案
我遇到了同样的问题并正在寻找解决方案。找不到任何东西,所以编写一个小的 python 脚本来解决这个问题。
from py2neo import Graph
neo_url = 'http://neo4j:password@localhost:7474/db/data'
graph = Graph(neo_url)
file_name = "test.cypher"
with open(file_name, encoding="utf8") as file_in:
query = ""
for line in file_in:
if line.strip().lower() == ":begin" or line.strip().lower() == ":commit":
continue
query += line
if line.strip()[-1] == ";":
graph.run(query)
query = ""
推荐阅读
- android - 如何在android布局textview中设置大整数?
- rust - 在 Rust 中,我在哪里可以找到结构的方法实现的参考?
- javascript - 如何在 Vuetify 2.0 中使用带有 v-file-input 标签的 v-tooltip?
- spring - Spring Boot Rest Controller - 是否可以在处理请求之前使用自定义注释来过滤请求?
- python - 如何在 Spark 中读取压缩的 avro 文件(.gz)?
- javascript - 生成从 min 到 max 范围内均匀分布的整数列表
- javascript - 以 JSON 格式保存动态 HTML 表格
- git - 创建新的 Git 存储库时,Visual Studio 2019 没有 GitLab 选项
- html - 在线托管时字体字体不起作用
- windows-10 - 在 Windows 10 中恢复为旧计算机名称