这些unicode类有什么区别?

时间:2016-03-14 12:48:53

标签: .net

说我想将字符串转换为utf8字节数组,我可以通过

来完成
System.Text.Encoding.UTF8.GetBytes(...)

System.Text.UnicodeEncoding.UTF8.GetBytes(...)

System.Text.UTF8Encoding.UTF8.GetBytes(...)

据我所知,他们之间没有区别。他们都是指同一件事吗?为什么会这么多?

1 个答案:

答案 0 :(得分:3)

  1. UnicodeEncodingUTF8Encoding都是Encoding的子类 类。
  2. UTF8Encoding
  3. 的静态属性
  4. 您可以使用其子类的名称访问类的静态属性/字段/方法,因此在这种情况下UnicodeEncoding.UTF8与编写Encoding.UTF8
  5. 相同
  6. 作为第3点的例外,子类可以"隐藏"使用new关键字的子类的属性/字段/方法......但是在这种情况下不会发生这种情况。
  7. 对于第3点和第4点,请参阅示例this question(它是一个方法,但概念是相同的)