System.Text.Encoding.cs
ylbtech-System.Text.Encoding.cs |
1.程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089返回顶部 |
#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.返回顶部 |
3.返回顶部 |
4.返回顶部 |
5.返回顶部 |
6.返回顶部 |
![]() |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
System.Text.Encoding.cs的更多相关文章
- c#字符编码,System.Text.Encoding类,字符编码大全:如Unicode编码、GB18030、UTF-8,UTF-7,GB2312,ASCII,UTF32,Big5
本页列出来目前window下所有支持的字符编码 ---c#通过 System.Text.Encoding.GetEncodings()获取,里面可以对其进行查询,筛选,对同一个字符,在不同编码进行查 ...
- System.Text.Encoding.Default
string strTmp = "abcdefg某某某";int i= System.Text.Encoding.Default.GetBytes(strTmp).Length;/ ...
- .NETFramework:System.Net.WebClient.cs
ylbtech-.NETFramework:System.Net.WebClient.cs 提供用于将数据发送到和接收来自通过 URI 确认的资源数据的常用方法 1.返回顶部 1. #region 程 ...
- 【C# 编码格式】 System.Text 命名空间 Encoding
Encoding基类 System.Text.ASCIIEncoding类 System.Text.UnicodeEncoding类 System.Text.UTF32Encodin ...
- [译]试用新的System.Text.Json API
译注 可能有的小伙伴已经知道了,在.NET Core 3.0中微软加入了对JSON的内置支持. 一直以来.NET开发者们已经习惯使用Json.NET这个强大的库来处理JSON. 那么.NET为什么要增 ...
- 在.Net Core 3.0中尝试新的System.Text.Json API
.NET Core 3.0提供了一个名为System.Text.Json的全新命名空间,它支持reader/writer,文档对象模型(DOM)和序列化程序.在此博客文章中,我将介绍它如何工作以及如何 ...
- In .net 4.8,calculate the time cost of serialization in BinaryFormatter,NewtonSoft.json,and System.Text.Json.JsonSerializer.Serialize
using ConsoleApp390.Model; using Newtonsoft.Json; using System; using System.Collections.Generic; us ...
- .NET Core 3.0 System.Text.Json 和 Newtonsoft.Json 行为不一致问题及解决办法
行为不一致 .NET Core 3.0 新出了个内置的 JSON 库, 全名叫做尼古拉斯 System.Text.Json - 性能更高占用内存更少这都不是事... 对我来说, 很多或大或小的项目能少 ...
- MessagePack 和System.Text.Json 序列号 反序列化对比
本博客将测试MessagePack 和System.Text.Json 序列号 反序列化性能 项目文件: Program.cs代码: using BenchmarkDotNet.Running; us ...
随机推荐
- HTTP请求默认值
填写后,后面的请求如果对应的未填写,默认使用该参数
- 10个CSS简写技巧
CSS简写就是指将多行的CSS属性声明化成一行,又称为css代码优化.CSS简写的最大好处就是能够显著减少CSS文件的大小,其实还有很多其他益处.臃肿而杂乱的CSS样式表会使你遇到问题是难以调试.尤其 ...
- iOS开发系列-Runtime运用场景
概述 Runtime 又叫运行时,是一套底层的 C 语言 API,其为 iOS 内部的核心之一,我们平时编写的 OC 代码,底层都是基于它来实现的. 调用runtimeAPI需要导入都文件#impor ...
- js拼接HTML onclick传参,,页面转义符
字符串 1 使用" .比如: ("'+key+'")例: htmlStr = htmlStr + '<span><img src="'+src ...
- ERROR 1872
解决 > start slave; ERROR (HY000): Slave failed to initialize relay log info structure from the rep ...
- keepalived中vrrp_script,track_script,notify的使用方法
keepalived中vrrp_script,track_script,notify的使用方法转自:https://blog.51cto.com/liuzhengwei521/1929589 可以在k ...
- 校园商铺-4店铺注册功能模块-4Dto之ShopExecution的实现
1. DTO:添加店铺的返回类型 问题:为什么不直接用实体类Shop呢? 原因:在操作Shop的时候,必然会有一个状态.添加店铺,添加成功,还是添加失败? 如果添加失败,失败是一个什么状态,这些都是要 ...
- Ubuntu 更新错误修复大全
合并列表问题 当你在终端中运行更新命令时,你可能会碰到这个错误“合并列表错误”,就像下面这样: E:Encountered a section with no Package: header, E:P ...
- (转)SQL盲注攻击的简单介绍
转:http://hi.baidu.com/duwang1104/item/65a6603056aee780c3cf2968 1 简介 1.1 普通SQL注入技术概述 目前没有对SQL ...
- System.Drawing.Graphics.cs
ylbtech-System.Drawing.Graphics.cs 1.程序集 System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKey ...