长生不老药 Bson 解码器在 utf8 > 16#FF 上失败
elixir Bson decoder failing on utf8 > 16#FF
我正在阅读 mongodb 并使用 Bson.decoder(数据)。在此过程中,数据变成包含 {"unitˊs", 1} 的元组列表。 String.to_atom("unitˊs") 显然失败了,因为第 5 个字符是 "MODIFIER LETTER ACUTE ACCENT (U+02CA)" 和
** (ArgumentError) argument error
:erlang.binary_to_atom("unitˊs", :utf8)
和 http://erlang.org/doc/man/erlang.html#binary_to_atom-2 注释
binary_to_atom(Binary, utf8) will fail if the binary contains Unicode characters greater than 16#FF
是否有任何建议的解决方法?
在 Erlang 18 将支持原子的完整 unicode 范围之前,没有任何解决方法。所以最好的选择是现在不要将其转换为原子。
我正在阅读 mongodb 并使用 Bson.decoder(数据)。在此过程中,数据变成包含 {"unitˊs", 1} 的元组列表。 String.to_atom("unitˊs") 显然失败了,因为第 5 个字符是 "MODIFIER LETTER ACUTE ACCENT (U+02CA)" 和
** (ArgumentError) argument error
:erlang.binary_to_atom("unitˊs", :utf8)
和 http://erlang.org/doc/man/erlang.html#binary_to_atom-2 注释
binary_to_atom(Binary, utf8) will fail if the binary contains Unicode characters greater than 16#FF
是否有任何建议的解决方法?
在 Erlang 18 将支持原子的完整 unicode 范围之前,没有任何解决方法。所以最好的选择是现在不要将其转换为原子。