Encoding.GetBytes(String)是在ASCIIEncoding类中实现的吗?

时间:2015-02-15 03:27:38

标签: c#

这是ASCIIEncoding GetBytes(String)GetBytes(String)所说的内容:

  

在派生类中重写时,会对其中的所有字符进行编码   将指定的字符串转换为字节序列。 (继承自编码。)

这是否意味着ASCIIEncodingEncoding中没有实现?在基类(ASCIIEncoding)中创建虚方法的重点不是在派生类(UnicodeEncodingUTF8EncodingASCIIEncoding等中覆盖它。 )?


编辑: 我只在GetBytes(String, Int32, Int32, Byte[], Int32) GetBytes(Char[], Int32, Int32, Byte[], Int32)找到了以下函数的实现:{{1} },GetBytes(Char*, Int32, Byte*, Int32)和{{1}}。

1 个答案:

答案 0 :(得分:0)

这看起来像文档的问题。

如果您查看methods list for the ASCIIEncoding typeGetBytes(String)函数的链接会转到基本/抽象Encoding.GetBytes(String)方法的文档,而不是ASCIIEncoding.GetBytes(String)方法。它似乎是链接中的错误。可能是基本Encoding.GetBytes(String)方法在ASCII字符集的情况下已经做了正确的事情,但如果是这样的话,ASCIIEncoding类文档中的其他方法确实链接到直接在该类型上实现,并且Encoding方法的文档没有表明这一点。