如何将默认字符串编码更改为UTF 8?

时间:2010-11-11 19:58:14

标签: .net string encoding

我猜.net使用UTF 16进行字符串编码。

  1. 如何将其更改为使用UTF 8?
  2. 更改编码的副作用是什么?
  3. 我的.net(c#)应用程序完全保持大约120 MB的字符串实例。我假设如果我可以将默认编码更改为UTF 8,则占用空间将减少一半。

1 个答案:

答案 0 :(得分:10)

无需猜测。它确实在内部使用UTF-16(请参阅MSDN上Char结构页面的备注部分)。

您无法更改.NET内部处理字符串的方式。

如果您需要更改输出的编码,请使用Encoding类,特别是对于UTF-8,您只需使用静态属性Encoding.UTF8

我理解想要节省空间,但是您可能需要重新考虑应用程序设计并在外部使用这些字符串(即从文件系统或数据库加载)而不是编译到应用程序中?