【发布时间】:2020-01-13 15:34:07
【问题描述】:
我马上要道歉,因为英语不是我的母语,如果“符号化字符串”或类似的东西实际上没有意义,我很抱歉。
我的情况:我正在使用 nodejs 读取 google 支持的设备 csv 文件 (https://support.google.com/googleplay/answer/1727131?hl=en),如下所示:readFileSync(PATH, 'utf16le').split('\n');
其中一行看起来像Y6 \xe2\x85\xa1 Compact\xe2\x85\xa1 是一个 UTF-8 字符串文字,它实际上代表 Ⅱ(罗马数字 2)(至少根据这个:https://www.utf8-chartable.de/unicode-utf8-table.pl?start=8448&number=128&utf8=string-literal&text=8545)
当我尝试处理此字符串时,节点自动添加 \\ 使其成为 \\xe2\\x85\\xa1,因为 \x 不是有效字符等。
但是有什么方法可以让我真正得到罗马数字吗?
如果没有,任何关于轻松完全删除此类数据的建议(罗马数字更像是“拥有”而不是“必须”)
【问题讨论】:
-
所以文件确实包含转义字符串?然后你必须解析它,例如
JSON.parse
标签: javascript node.js encoding decoding