首页 > Web开发 > 详细

.NETFramework:Encoding

时间:2018-08-20 10:21:41      阅读:177      评论:0      收藏:0      [点我收藏+]
ylbtech-.NETFramework:Encoding

 

1.返回顶部
1、
#region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\mscorlib.dll
#endregion

using System.Runtime;
using System.Runtime.InteropServices;
using System.Security;

namespace System.Text
{
    //
    // 摘要:
    //     表示字符编码。若要浏览此类型的.NET Framework 源代码,请参阅 Reference Source。
    [ComVisible(true)]
    public abstract class Encoding : ICloneable
    {
        //
        // 摘要:
        //     初始化 System.Text.Encoding 类的新实例。
        protected Encoding();
        //
        // 摘要:
        //     初始化对应于指定代码页的 System.Text.Encoding 类的新实例。
        //
        // 参数:
        //   codePage:
        //     首选编码的代码页标识符。- 或 - 0,使用默认编码。
        //
        // 异常:
        //   T:System.ArgumentOutOfRangeException:
        //     codePage 小于零。
        protected Encoding(int codePage);

        //
        // 摘要:
        //     获取 UTF-7 格式的编码。
        //
        // 返回结果:
        //     UTF-7 格式的编码。
        public static Encoding UTF7 { get; }
        //
        // 摘要:
        //     获取使用 Big Endian 字节顺序的 UTF-16 格式的编码。
        //
        // 返回结果:
        //     使用 Big Endian 字节顺序的 UTF-16 格式的编码对象。
        public static Encoding BigEndianUnicode { get; }
        //
        // 摘要:
        //     获取使用 Little-Endian 字节顺序的 UTF-16 格式的编码。
        //
        // 返回结果:
        //     使用 Little-Endian 字节顺序的 UTF-16 格式的编码。
        public static Encoding Unicode { get; }
        //
        // 摘要:
        //     获取操作系统的当前 ANSI 代码页的编码。
        //
        // 返回结果:
        //     操作系统的当前 ANSI 代码页的编码。
        public static Encoding Default { get; }
        //
        // 摘要:
        //     获取 ASCII(7 位)字符集的编码。
        //
        // 返回结果:
        //     ASCII(7 位)字符集的编码。
        public static Encoding ASCII { get; }
        //
        // 摘要:
        //     获取 UTF-8 格式的编码。
        //
        // 返回结果:
        //     UTF-8 格式的编码。
        public static Encoding UTF8 { get; }
        //
        // 摘要:
        //     获取使用 Little-Endian 字节顺序的 UTF-32 格式的编码。
        //
        // 返回结果:
        //     使用 Little-Endian 字节顺序的 UTF-32 格式的编码对象。
        public static Encoding UTF32 { get; }
        //
        // 摘要:
        //     获取或设置当前 System.Text.DecoderFallback 对象的 System.Text.Encoding 对象。
        //
        // 返回结果:
        //     当前 System.Text.Encoding 对象的解码器回退对象。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     设置操作中的值为 null。
        //
        //   T:System.InvalidOperationException:
        //     无法在设置操作中分配一个值,因为当前 System.Text.Encoding 对象是只读的。
        [ComVisible(false)]
        public DecoderFallback DecoderFallback { get; set; }
        //
        // 摘要:
        //     在派生类中重写时,获取当前 System.Text.Encoding 的代码页标识符。
        //
        // 返回结果:
        //     当前 System.Text.Encoding 的代码页标识符。
        public virtual int CodePage { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取一个值,该值指示当前的编码是否为只读。
        //
        // 返回结果:
        //     如果当前 true 为只读,则为 System.Text.Encoding;否则为 false。 默认值为 true。
        [ComVisible(false)]
        public bool IsReadOnly { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取可与邮件代理正文标记一起使用的当前编码的名称。
        //
        // 返回结果:
        //     可与邮件代理正文标记一起使用的当前 System.Text.Encoding 的名称。- 或 - 如果当前 System.Text.Encoding 无法使用,则为空字符串
        //     ("")。
        public virtual string BodyName { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取当前编码的用户可读说明。
        //
        // 返回结果:
        //     当前 System.Text.Encoding 的用户可读说明。
        public virtual string EncodingName { get; }
        //
        // 摘要:
        //     获取或设置当前 System.Text.EncoderFallback 对象的 System.Text.Encoding 对象。
        //
        // 返回结果:
        //     当前 System.Text.Encoding 对象的编码器回退对象。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     设置操作中的值为 null。
        //
        //   T:System.InvalidOperationException:
        //     无法在设置操作中分配一个值,因为当前 System.Text.Encoding 对象是只读的。
        [ComVisible(false)]
        public EncoderFallback EncoderFallback { get; set; }
        //
        // 摘要:
        //     在派生类中重写时,获取在 Internet 编号分配管理机构 (IANA) 注册的当前编码的名称。
        //
        // 返回结果:
        //     当前 System.Text.Encoding 的 IANA 名称。
        public virtual string WebName { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取可与邮件代理头标记一起使用的当前编码的名称。
        //
        // 返回结果:
        //     与邮件代理头标记一起使用的当前 System.Text.Encoding 的名称。- 或 - 如果当前 System.Text.Encoding 无法使用,则为空字符串
        //     ("")。
        public virtual string HeaderName { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取一个值,该值指示浏览器客户端是否可以使用当前的编码显示内容。
        //
        // 返回结果:
        //     如果浏览器客户端可以使用当前 true 显示内容,则为 System.Text.Encoding;否则为 false。
        public virtual bool IsBrowserDisplay { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取一个值,该值指示浏览器客户端是否可以使用当前的编码保存内容。
        //
        // 返回结果:
        //     如果浏览器客户端可以使用当前 true 保存内容,则为 System.Text.Encoding;否则为 false。
        public virtual bool IsBrowserSave { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取一个值,该值指示邮件和新闻客户端是否可以使用当前的编码显示内容。
        //
        // 返回结果:
        //     如果邮件和新闻客户端可以使用当前 true 显示内容,则为 System.Text.Encoding;否则为 false。
        public virtual bool IsMailNewsDisplay { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取一个值,该值指示邮件和新闻客户端是否可以使用当前的编码保存内容。
        //
        // 返回结果:
        //     如果邮件和新闻客户端可以使用当前 true 保存内容,则为 System.Text.Encoding;否则为 false。
        public virtual bool IsMailNewsSave { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取一个值,该值指示当前的编码是否使用单字节码位。
        //
        // 返回结果:
        //     如果当前 true 使用单字节码位,则为 System.Text.Encoding;否则为 false。
        [ComVisible(false)]
        public virtual bool IsSingleByte { get; }
        //
        // 摘要:
        //     在派生类中重写时,获取与当前编码最紧密对应的 Windows 操作系统代码页。
        //
        // 返回结果:
        //     与当前 System.Text.Encoding 最紧密对应的 Windows 操作系统代码页。
        public virtual int WindowsCodePage { get; }

        //
        // 摘要:
        //     将字节数组内某个范围的字节从一种编码转换为另一种编码。
        //
        // 参数:
        //   srcEncoding:
        //     源数组 bytes 的编码。
        //
        //   dstEncoding:
        //     输出数组的编码。
        //
        //   bytes:
        //     要转换的字节数组。
        //
        //   index:
        //     要转换的 bytes 中第一个元素的索引。
        //
        //   count:
        //     要转换的字节数。
        //
        // 返回结果:
        //     一个 System.Byte 类型的数组,其中包含将 bytes 中某个范围的字节从 srcEncoding 转换为 dstEncoding 的结果。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     srcEncoding 为 null。- 或 - dstEncoding 为 null。- 或 - bytes 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     index 和 count 没有在字节数组中指定的有效范围。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-srcEncoding。System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-dstEncoding。System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes, int index, int count);
        //
        // 摘要:
        //     将整个字节数组从一种编码转换为另一种编码。
        //
        // 参数:
        //   srcEncoding:
        //     bytes 的编码格式。
        //
        //   dstEncoding:
        //     目标编码格式。
        //
        //   bytes:
        //     要转换的字节。
        //
        // 返回结果:
        //     System.Byte 类型的数组,其中包含将 bytes 从 srcEncoding 转换为 dstEncoding 的结果。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     srcEncoding 为 null。- 或 - dstEncoding 为 null。- 或 - bytes 为 null。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-srcEncoding。System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-dstEncoding。System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public static byte[] Convert(Encoding srcEncoding, Encoding dstEncoding, byte[] bytes);
        //
        // 摘要:
        //     返回与指定代码页标识符关联的编码。
        //
        // 参数:
        //   codepage:
        //     首选编码的代码页标识符。 可能值均在 System.Text.Encoding 类主题中出现的表的“代码页”一列中列出。- 或 - 0(零),使用默认编码。
        //
        // 返回结果:
        //     与指定代码页关联的编码。
        //
        // 异常:
        //   T:System.ArgumentOutOfRangeException:
        //     codepage 小于零或大于 65535。
        //
        //   T:System.ArgumentException:
        //     codepage 不支持由基础平台。
        //
        //   T:System.NotSupportedException:
        //     codepage 不支持由基础平台。
        [SecuritySafeCritical]
        public static Encoding GetEncoding(int codepage);
        //
        // 摘要:
        //     返回与指定代码页名称关联的编码。
        //
        // 参数:
        //   name:
        //     首选编码的代码页名称。System.Text.Encoding.WebName 属性返回的所有值均有效。 可能值均在 System.Text.Encoding
        //     类主题中出现的表的“名称”一列中列出。
        //
        // 返回结果:
        //     与指定代码页关联的编码。
        //
        // 异常:
        //   T:System.ArgumentException:
        //     name 不是有效的代码页名称。- 或 - 代码页由 name 不支持由基础平台。
        public static Encoding GetEncoding(string name);
        //
        // 摘要:
        //     返回与指定代码页名称关联的编码。 参数指定一个错误处理程序,用于处理无法编码的字符和无法解码的字节序列。
        //
        // 参数:
        //   name:
        //     首选编码的代码页名称。System.Text.Encoding.WebName 属性返回的所有值均有效。 可能值均在 System.Text.Encoding
        //     类主题中出现的表的“名称”一列中列出。
        //
        //   encoderFallback:
        //     一个对象,在无法用当前编码对字符进行编码时,该对象可用来提供错误处理过程。
        //
        //   decoderFallback:
        //     一个对象,在无法用当前编码对字节序列进行解码时,该对象可用来提供错误处理过程。
        //
        // 返回结果:
        //     与指定代码页关联的编码。
        //
        // 异常:
        //   T:System.ArgumentException:
        //     name 不是有效的代码页名称。- 或 - 代码页由 name 不支持由基础平台。
        public static Encoding GetEncoding(string name, EncoderFallback encoderFallback, DecoderFallback decoderFallback);
        //
        // 摘要:
        //     返回与指定代码页标识符关联的编码。 参数指定一个错误处理程序,用于处理无法编码的字符和无法解码的字节序列。
        //
        // 参数:
        //   codepage:
        //     首选编码的代码页标识符。 可能值均在 System.Text.Encoding 类主题中出现的表的“代码页”一列中列出。- 或 - 0(零),使用默认编码。
        //
        //   encoderFallback:
        //     一个对象,在无法用当前编码对字符进行编码时,该对象可用来提供错误处理过程。
        //
        //   decoderFallback:
        //     一个对象,在无法用当前编码对字节序列进行解码时,该对象可用来提供错误处理过程。
        //
        // 返回结果:
        //     与指定代码页关联的编码。
        //
        // 异常:
        //   T:System.ArgumentOutOfRangeException:
        //     codepage 小于零或大于 65535。
        //
        //   T:System.ArgumentException:
        //     codepage 不支持由基础平台。
        //
        //   T:System.NotSupportedException:
        //     codepage 不支持由基础平台。
        public static Encoding GetEncoding(int codepage, EncoderFallback encoderFallback, DecoderFallback decoderFallback);
        //
        // 摘要:
        //     返回包含所有编码的数组。
        //
        // 返回结果:
        //     包含所有编码的数组。
        public static EncodingInfo[] GetEncodings();
        //
        // 摘要:
        //     当在派生类中重写时,创建当前 System.Text.Encoding 对象的一个卷影副本。
        //
        // 返回结果:
        //     当前 System.Text.Encoding 对象的副本。
        [ComVisible(false)]
        public virtual object Clone();
        //
        // 摘要:
        //     确定指定的 System.Object 是否等同于当前实例。
        //
        // 参数:
        //   value:
        //     与当前实例进行比较的 System.Object。
        //
        // 返回结果:
        //     如果 true 是 value 的一个实例并且等于当前实例,则为 System.Text.Encoding;否则,为 false。
        public override bool Equals(object value);
        //
        // 摘要:
        //     在派生类中重写时,计算对指定字符数组中的所有字符进行编码所产生的字节数。
        //
        // 参数:
        //   chars:
        //     包含要编码的字符的字符数组。
        //
        // 返回结果:
        //     对指定字符数组中的所有字符进行编码后产生的字节数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     chars 为 null。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public virtual int GetByteCount(char[] chars);
        //
        // 摘要:
        //     在派生类中重写时,计算对指定字符串中的字符进行编码所产生的字节数。
        //
        // 参数:
        //   s:
        //     包含要编码的字符集的字符串。
        //
        // 返回结果:
        //     对指定字符进行编码后生成的字节数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     s 为 null。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public virtual int GetByteCount(string s);
        //
        // 摘要:
        //     在派生类中重写时,计算对指定字符数组中的一组字符进行编码所产生的字节数。
        //
        // 参数:
        //   chars:
        //     包含要编码的字符集的字符数组。
        //
        //   index:
        //     第一个要编码的字符的索引。
        //
        //   count:
        //     要编码的字符的数目。
        //
        // 返回结果:
        //     对指定字符进行编码后生成的字节数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     chars 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     index 或 count 小于零。- 或 - index 和 count 不表示中的有效范围 chars。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public abstract int GetByteCount(char[] chars, int index, int count);
        //
        // 摘要:
        //     在派生类中重写时,计算对一组字符(从指定的字符指针处开始)进行编码所产生的字节数。
        //
        // 参数:
        //   chars:
        //     指向第一个要编码的字符的指针。
        //
        //   count:
        //     要编码的字符的数目。
        //
        // 返回结果:
        //     对指定字符进行编码后生成的字节数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     chars 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     count 小于零。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        [CLSCompliant(false)]
        [ComVisible(false)]
        [SecurityCritical]
        public virtual int GetByteCount(char* chars, int count);
        //
        // 摘要:
        //     在派生类中重写时,将指定字符数组中的所有字符编码为一个字节序列。
        //
        // 参数:
        //   chars:
        //     包含要编码的字符的字符数组。
        //
        // 返回结果:
        //     一个字节数组,包含对指定的字符集进行编码的结果。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     chars 为 null。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public virtual byte[] GetBytes(char[] chars);
        //
        // 摘要:
        //     在派生类中重写时,将指定字符数组中的一组字符编码为一个字节序列。
        //
        // 参数:
        //   chars:
        //     包含要编码的字符集的字符数组。
        //
        //   index:
        //     第一个要编码的字符的索引。
        //
        //   count:
        //     要编码的字符的数目。
        //
        // 返回结果:
        //     一个字节数组,包含对指定的字符集进行编码的结果。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     chars 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     index 或 count 小于零。- 或 - index 和 count 不表示中的有效范围 chars。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        [TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
        public virtual byte[] GetBytes(char[] chars, int index, int count);
        //
        // 摘要:
        //     在派生类中重写时,将指定字符数组中的一组字符编码为指定的字节数组。
        //
        // 参数:
        //   chars:
        //     包含要编码的字符集的字符数组。
        //
        //   charIndex:
        //     第一个要编码的字符的索引。
        //
        //   charCount:
        //     要编码的字符的数目。
        //
        //   bytes:
        //     要包含所产生的字节序列的字节数组。
        //
        //   byteIndex:
        //     要开始写入所产生的字节序列的索引位置。
        //
        // 返回结果:
        //     写入 bytes 的实际字节数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     chars 为 null。- 或 - bytes 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     charIndex 或 charCount 或 byteIndex 也不可小于零。- 或 - charIndex 和 charCount 不表示中的有效范围
        //     chars。- 或 - byteIndex 不是 bytes 中的有效索引。
        //
        //   T:System.ArgumentException:
        //     bytes 没有足够的容量,从 byteIndex 到以适应所产生的字节数组的末尾。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public abstract int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex);
        //
        // 摘要:
        //     在派生类中重写时,将指定字符串中的一组字符编码为指定的字节数组。
        //
        // 参数:
        //   s:
        //     包含要编码的字符集的字符串。
        //
        //   charIndex:
        //     第一个要编码的字符的索引。
        //
        //   charCount:
        //     要编码的字符的数目。
        //
        //   bytes:
        //     要包含所产生的字节序列的字节数组。
        //
        //   byteIndex:
        //     要开始写入所产生的字节序列的索引位置。
        //
        // 返回结果:
        //     写入 bytes 的实际字节数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     s 为 null。- 或 - bytes 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     charIndex 或 charCount 或 byteIndex 也不可小于零。- 或 - charIndex 和 charCount 不表示中的有效范围
        //     chars。- 或 - byteIndex 不是 bytes 中的有效索引。
        //
        //   T:System.ArgumentException:
        //     bytes 没有足够的容量,从 byteIndex 到以适应所产生的字节数组的末尾。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public virtual int GetBytes(string s, int charIndex, int charCount, byte[] bytes, int byteIndex);
        //
        // 摘要:
        //     在派生类中重写时,将一组字符(从指定的字符指针开始)编码为一个字节序列,并从指定的字节指针开始存储该字节序列。
        //
        // 参数:
        //   chars:
        //     指向第一个要编码的字符的指针。
        //
        //   charCount:
        //     要编码的字符的数目。
        //
        //   bytes:
        //     一个指针,指向开始写入所产生的字节序列的位置。
        //
        //   byteCount:
        //     最多写入的字节数。
        //
        // 返回结果:
        //     在由 bytes 参数指示的位置处写入的实际字节数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     chars 为 null。- 或 - bytes 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     charCount 或 byteCount 也不可小于零。
        //
        //   T:System.ArgumentException:
        //     byteCount 小于所产生的字节数。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        [CLSCompliant(false)]
        [ComVisible(false)]
        [SecurityCritical]
        public virtual int GetBytes(char* chars, int charCount, byte* bytes, int byteCount);
        //
        // 摘要:
        //     在派生类中重写时,将指定字符串中的所有字符编码为一个字节序列。
        //
        // 参数:
        //   s:
        //     包含要编码的字符的字符串。
        //
        // 返回结果:
        //     一个字节数组,包含对指定的字符集进行编码的结果。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     s 为 null。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public virtual byte[] GetBytes(string s);
        //
        // 摘要:
        //     在派生类中重写时,计算对指定字节数组中的所有字节进行解码所产生的字符数。
        //
        // 参数:
        //   bytes:
        //     包含要解码的字节序列的字节数组。
        //
        // 返回结果:
        //     对指定字节序列进行解码所产生的字符数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     bytes 为 null。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        public virtual int GetCharCount(byte[] bytes);
        //
        // 摘要:
        //     在派生类中重写时,计算对字节序列(从指定字节数组开始)进行解码所产生的字符数。
        //
        // 参数:
        //   bytes:
        //     包含要解码的字节序列的字节数组。
        //
        //   index:
        //     第一个要解码的字节的索引。
        //
        //   count:
        //     要解码的字节数。
        //
        // 返回结果:
        //     对指定字节序列进行解码所产生的字符数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     bytes 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     index 或 count 小于零。- 或 - index 和 count 不表示 bytes 中的有效范围。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        public abstract int GetCharCount(byte[] bytes, int index, int count);
        //
        // 摘要:
        //     在派生类中重写时,计算对字节序列(从指定的字节指针开始)进行解码所产生的字符数。
        //
        // 参数:
        //   bytes:
        //     指向第一个要解码的字节的指针。
        //
        //   count:
        //     要解码的字节数。
        //
        // 返回结果:
        //     对指定字节序列进行解码所产生的字符数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     bytes 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     count 小于零。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        [CLSCompliant(false)]
        [ComVisible(false)]
        [SecurityCritical]
        public virtual int GetCharCount(byte* bytes, int count);
        //
        // 摘要:
        //     在派生类中重写时,将一个字节序列(从指定的字节指针开始)解码为一组字符,并从指定的字符指针开始存储该组字符。
        //
        // 参数:
        //   bytes:
        //     指向第一个要解码的字节的指针。
        //
        //   byteCount:
        //     要解码的字节数。
        //
        //   chars:
        //     一个指针,指向开始写入所产生的字符集的位置。
        //
        //   charCount:
        //     要写入的最大字符数。
        //
        // 返回结果:
        //     在由 chars 参数指示的位置处写入的实际字符数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     bytes 为 null。- 或 - chars 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     byteCount 或 charCount 也不可小于零。
        //
        //   T:System.ArgumentException:
        //     charCount 小于所产生的字符数。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        [CLSCompliant(false)]
        [ComVisible(false)]
        [SecurityCritical]
        public virtual int GetChars(byte* bytes, int byteCount, char* chars, int charCount);
        //
        // 摘要:
        //     在派生类中重写时,将指定字节数组中的所有字节解码为一组字符。
        //
        // 参数:
        //   bytes:
        //     包含要解码的字节序列的字节数组。
        //
        // 返回结果:
        //     一个字节数组,包含对指定的字节序列进行解码的结果。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     bytes 为 null。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        public virtual char[] GetChars(byte[] bytes);
        //
        // 摘要:
        //     在派生类中重写时,将指定字节数组中的一个字节序列解码为一组字符。
        //
        // 参数:
        //   bytes:
        //     包含要解码的字节序列的字节数组。
        //
        //   index:
        //     第一个要解码的字节的索引。
        //
        //   count:
        //     要解码的字节数。
        //
        // 返回结果:
        //     一个字节数组,包含对指定的字节序列进行解码的结果。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     bytes 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     index 或 count 小于零。- 或 - index 和 count 不表示 bytes 中的有效范围。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        public virtual char[] GetChars(byte[] bytes, int index, int count);
        //
        // 摘要:
        //     在派生类中重写时,将指定字节数组中的字节序列解码为指定的字符数组。
        //
        // 参数:
        //   bytes:
        //     包含要解码的字节序列的字节数组。
        //
        //   byteIndex:
        //     第一个要解码的字节的索引。
        //
        //   byteCount:
        //     要解码的字节数。
        //
        //   chars:
        //     要用于包含所产生的字符集的字符数组。
        //
        //   charIndex:
        //     开始写入所产生的字符集的索引位置。
        //
        // 返回结果:
        //     写入 chars 的实际字符数。
        //
        // 异常:
        //   T:System.ArgumentNullException:
        //     bytes 为 null。- 或 - chars 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     byteIndex 或 byteCount 或 charIndex 也不可小于零。- 或 - byteindex 和 byteCount 不表示中的有效范围
        //     bytes。- 或 - charIndex 不是 chars 中的有效索引。
        //
        //   T:System.ArgumentException:
        //     chars 没有足够的容量,从 charIndex 到要适应所产生的字符的数组的末尾。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        public abstract int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex);
        //
        // 摘要:
        //     在派生类中重写时,获取一个解码器,该解码器将已编码的字节序列转换为字符序列。
        //
        // 返回结果:
        //     一个 System.Text.Decoder,它将已编码的字节序列转换为字符序列。
        public virtual Decoder GetDecoder();
        //
        // 摘要:
        //     在派生类中重写时,获取一个解码器,该解码器将 Unicode 字符序列转换为已编码的字节序列。
        //
        // 返回结果:
        //     一个 System.Text.Encoder,它将 Unicode 字符序列转换为已编码的字节序列。
        public virtual Encoder GetEncoder();
        //
        // 摘要:
        //     返回当前实例的哈希代码。
        //
        // 返回结果:
        //     当前实例的哈希代码。
        public override int GetHashCode();
        //
        // 摘要:
        //     在派生类中重写时,计算对指定数目的字符进行编码所产生的最大字节数。
        //
        // 参数:
        //   charCount:
        //     要编码的字符的数目。
        //
        // 返回结果:
        //     对指定数目的字符进行编码所产生的最大字节数。
        //
        // 异常:
        //   T:System.ArgumentOutOfRangeException:
        //     charCount 小于零。
        //
        //   T:System.Text.EncoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.EncoderFallback
        //     设置为 System.Text.EncoderExceptionFallback。
        public abstract int GetMaxByteCount(int charCount);
        //
        // 摘要:
        //     在派生类中重写时,计算对指定数目的字节进行解码时所产生的最大字符数。
        //
        // 参数:
        //   byteCount:
        //     要解码的字节数。
        //
        // 返回结果:
        //     对指定数目的字节进行解码时所产生的最大字符数。
        //
        // 异常:
        //   T:System.ArgumentOutOfRangeException:
        //     byteCount 小于零。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        public abstract int GetMaxCharCount(int byteCount);
        //
        // 摘要:
        //     在派生类中重写时,返回指定所用编码的字节序列。
        //
        // 返回结果:
        //     一个字节数组,包含指定所用编码的字节序列。- 或 - 长度为零的字节数组(如果不需要前导码)。
        public virtual byte[] GetPreamble();
        //
        // 摘要:
        //     在派生类中重写时,将指定字节数组中的所有字节解码为一个字符串。
        //
        // 参数:
        //   bytes:
        //     包含要解码的字节序列的字节数组。
        //
        // 返回结果:
        //     包含指定字节序列解码结果的字符串。
        //
        // 异常:
        //   T:System.ArgumentException:
        //     字节数组包含无效的 Unicode 码位。
        //
        //   T:System.ArgumentNullException:
        //     bytes 为 null。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        public virtual string GetString(byte[] bytes);
        //
        // 摘要:
        //     在派生类中重写时,将指定字节数组中的一个字节序列解码为一个字符串。
        //
        // 参数:
        //   bytes:
        //     包含要解码的字节序列的字节数组。
        //
        //   index:
        //     第一个要解码的字节的索引。
        //
        //   count:
        //     要解码的字节数。
        //
        // 返回结果:
        //     包含指定字节序列解码结果的字符串。
        //
        // 异常:
        //   T:System.ArgumentException:
        //     字节数组包含无效的 Unicode 码位。
        //
        //   T:System.ArgumentNullException:
        //     bytes 为 null。
        //
        //   T:System.ArgumentOutOfRangeException:
        //     index 或 count 小于零。- 或 - index 和 count 不表示 bytes 中的有效范围。
        //
        //   T:System.Text.DecoderFallbackException:
        //     发生回退 (请参阅 .NET Framework 中的字符编码 有关完整说明)-和-将 System.Text.Encoding.DecoderFallback
        //     设置为 System.Text.DecoderExceptionFallback。
        public virtual string GetString(byte[] bytes, int index, int count);
        //
        // 摘要:
        //     使用默认范式获取一个值,该值指示当前编码是否始终被规范化。
        //
        // 返回结果:
        //     如果当前 true 始终被规范化,则为 System.Text.Encoding;否则为 false。 默认值为 false。
        [ComVisible(false)]
        public bool IsAlwaysNormalized();
        //
        // 摘要:
        //     在派生类中重写时,使用指定范式获取一个值,该值指示当前编码是否始终被规范化。
        //
        // 参数:
        //   form:
        //     System.Text.NormalizationForm 值之一。
        //
        // 返回结果:
        //     如果始终使用指定的 true 值规范化当前 System.Text.Encoding 对象,则为 System.Text.NormalizationForm;否则为
        //     false。 默认值为 false。
        [ComVisible(false)]
        public virtual bool IsAlwaysNormalized(NormalizationForm form);
    }
}
2、
2.返回顶部
 
3.返回顶部
 
4.返回顶部
 
5.返回顶部
 
 
6.返回顶部
 
技术分享图片 作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

.NETFramework:Encoding

原文:https://www.cnblogs.com/storebook/p/9503995.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!