首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得UTF-16字节数组?

问如何获得UTF-16字节数组?
EN

Stack Overflow用户
提问于 2013-09-09 12:13:04
回答 2查看 31.7K关注 0票数 22

我有一个UTF-8字符串,我需要获得UTF-16编码的字节数组,那么如何将我的字符串转换为UTF-16字节数组呢?

更新:

我的意思是我们有Encoding.Unicode.GetBytes()甚至Encoding.UTF8.GetBytes()函数来获取字符串的字节数组,UTF-16呢?我们没有任何Encoding.UTF16.GetBytes(),所以如何获得字节数组?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-09 12:25:00

对于小终端UTF-16,请使用Encoding.Unicode.

对于大端UTF-16,请使用Encoding.BigEndianUnicode.

或者,构造一个UnicodeEncoding的显式实例,它允许您指定endianness,是否包括字节顺序标记,以及是否对无效数据抛出异常。

票数 34
EN

Stack Overflow用户

发布于 2013-09-09 12:18:01

我有一根UTF-8弦.

不你不可能那是不可能的。您可能有一个包含UTF-8编码文本的byte序列(数组或流).但不是string。

.net string总是包含Unicode (或者更准确地说,是UTF-16)。

.所以如何将我的字符串转换为UTF-16字节数组?

代码语言:javascript
复制
string myText = ...;  // some string, maybe from an UTF8 file or any other source
byte[] utf16Data = Encoding.Unicode.GetBytes(mytext);

该库定义了范围UTF7、UTF8、Unicode、UTF32。Unicode是UTF16框架上下文中的.NET。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18697962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档