二进制和 Unicode 字符串
Binary and Unicode string
我有这样的代码来构造一个二进制字符串
[<<"Hello, ", Name/binary>>]
正在尝试将 Name
读取为 Unicode。像这样,
[<<"Hello, ", Name/utf16/binary>>]
看起来这是一个明显的错误语法。我怎样才能使这项工作?提前致谢。
只需使用 /binary
和 unicode
模块中的函数即可在编码之间进行转换。
你的问题首先说你正在构造字符串,然后读取它。如果构建,你可以写
Utf16Name = unicode:characters_to_binary(Name, utf8, utf16),
[<<"Hello, ", Utf16Name/binary>>]
编辑:
当然,这很糟糕:"Hello, " 将是 UTF8!应该是
unicode:characters_to_binary(<<"Hello, ", Name/binary>>, utf8, utf16)
甚至
unicode:characters_to_binary(["Hello, ", Name], utf8, utf16)
我有这样的代码来构造一个二进制字符串
[<<"Hello, ", Name/binary>>]
正在尝试将 Name
读取为 Unicode。像这样,
[<<"Hello, ", Name/utf16/binary>>]
看起来这是一个明显的错误语法。我怎样才能使这项工作?提前致谢。
只需使用 /binary
和 unicode
模块中的函数即可在编码之间进行转换。
你的问题首先说你正在构造字符串,然后读取它。如果构建,你可以写
Utf16Name = unicode:characters_to_binary(Name, utf8, utf16),
[<<"Hello, ", Utf16Name/binary>>]
编辑: 当然,这很糟糕:"Hello, " 将是 UTF8!应该是
unicode:characters_to_binary(<<"Hello, ", Name/binary>>, utf8, utf16)
甚至
unicode:characters_to_binary(["Hello, ", Name], utf8, utf16)