这就是文档 for ASCIIEncoding对GetBytes(String)说的话
在派生类中重写时,将指定字符串中的所有字符编码为字节序列。(从编码继承而来)
那么,这是否意味着GetBytes(String)在ASCIIEncoding中没有实现呢?在基类(Encoding)中创建虚拟方法的目的不是要在派生类(ASCIIEncoding、UnicodeEncoding、UTF8Encoding等)中重写它吗?
编辑:我只在http://referencesource.microsoft.com/#mscorlib/system/text/asciiencoding.cs for ASCIIEncoding__中找到了以下函数的实现:GetBytes(String, Int32, Int32, Byte[], Int32)__、GetBytes(Char[], Int32, Int32, Byte[], Int32)__和GetBytes(Char*, Int32, Byte*, Int32)__。
发布于 2015-02-15 03:39:42
这似乎是文档的一个问题。
如果您查看ASCIIEncoding类型的方法列表,则GetBytes(String)函数的链接将带您访问基本/抽象Encoding.GetBytes(String)方法的文档,而不是ASCIIEncoding.GetBytes(String)方法。这似乎是链接中的一个错误。在ASCII字符集中,基本Encoding.GetBytes(String)方法可能已经完成了正确的操作,但如果是这样的话,奇怪的是,ASCIIEncoding类文档中的其他方法会直接链接到该类型上的实现,而且编码方法的文档没有表明这一点。
https://stackoverflow.com/questions/28522726
复制相似问题