我正在尝试在C#应用程序中设置任意(但受支持)编码的DecoderFallback属性。本质上,我想做的是:
ASCIIEncoding ascii = new ASCIIEncoding();
ascii.DecoderFallback = new DecoderExceptionFallback();
我遇到了一个我从未见过的异常(exception):
我无法找到有关如何使用该属性的示例的任何MSDN文档。如果有人能指出我的想法,也许会提出我的用法有什么问题,我将不胜感激。我需要在无法解码一个或多个字节时引发异常,并且不能让它不被注意。
谢谢,
布莱恩
最佳答案
此属性是只读的。您需要使用Encoding.GetEncoding()来使用您的配置创建自己的编码。此方法接收编码,EncoderFallback和DecoderFallback。
var enc = System.Text.Encoding.GetEncoding("ASCII", EncoderFallback.ExceptionFallback, DecoderFallback.ExceptionFallback);
http://msdn.microsoft.com/pt-br/library/89856k4b.aspx
关于c# - 无法设置编码类型的DecoderFallback属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/953328/