C#,文本框.Text编码

3

我有一段代码:

string text = sampleTextBox.Text;

我想知道这段文本是用什么编码格式的?它是utf16(因为它是字符串)还是我的操作系统编码格式?

2个回答

10

基本上都是Unicode - .NET文本类型(char/string)与二进制之间没有转换,因此不需要担心编码问题。

从UTF-16的文本表示形式(char/string)到完整的UTF-32可能需要关注代理对,但这与正常的编码问题略有不同。

从哲学上讲,文本框包含的是文本,而不是二进制数据。只有当需要将其转换为二进制格式(如文件)时,才需要考虑编码问题。


3

.Net 中的字符串变量在内部采用 UTF-16 格式。当你想要在程序外输出字符串时,如输出到文件、网页或通过网络传输时,编码格式就会发挥作用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接