通过


CodePagesEncodingProvider 类

定义

为代码页提供对编码提供程序的访问权限,否则仅在桌面 .NET Framework 中可用。

public ref class CodePagesEncodingProvider sealed
public ref class CodePagesEncodingProvider sealed : System::Text::EncodingProvider
[System.Security.SecurityCritical]
public sealed class CodePagesEncodingProvider
public sealed class CodePagesEncodingProvider : System.Text.EncodingProvider
[<System.Security.SecurityCritical>]
type CodePagesEncodingProvider = class
type CodePagesEncodingProvider = class
    inherit EncodingProvider
Public NotInheritable Class CodePagesEncodingProvider
Public NotInheritable Class CodePagesEncodingProvider
Inherits EncodingProvider
继承
CodePagesEncodingProvider
继承
CodePagesEncodingProvider
属性

注解

适用于 Windows 桌面的 .NET Framework 支持大量 Unicode 和代码页编码。 另一方面,.NET Core 仅支持以下编码:

  • ASCII (代码页 20127),由属性返回 Encoding.ASCII

  • ISO-8859-1(代码页 28591)。

  • UTF-7(代码页 65000),由属性返回 Encoding.UTF7

  • UTF-8(代码页 65001),属性返回 Encoding.UTF8

  • UTF-16 和 UTF-16LE(代码页 1200),由属性返回 Encoding.Unicode

  • UTF-16BE(代码页 1201),它通过调用值为 <a0/a0> 构造函数来实例化。

  • UTF-32 和 UTF-32LE(代码页 12000),属性返回 Encoding.UTF32

  • UTF-32BE(代码页 12001),通过调用 UTF32Encoding 具有 bigEndian 参数的构造函数并在方法调用中提供值 true 来实例化。

除了代码页 20127 之外,不支持代码页编码。

CodePagesEncodingProvider 类扩展 EncodingProvider 为使这些代码页可供 .NET Core 使用。 若要使用这些其他代码页,请执行以下操作:

注册对象 EncodingProvider 后,它支持的编码可通过调用重载 Encoding.GetEncoding获得;不应调用 EncodingProvider.GetEncoding 重载。

对默认编码行为的影响

注册CodePagesEncodingProvider还会影响在 .NET 中通过codepage参数0调用时的行为GetEncoding(Int32)(Core):

  • 在 Windows 上, GetEncoding(0) 返回与系统的活动代码页匹配的编码,该代码与 .NET Framework 中的行为相同。
  • 在非 Windows 平台上, GetEncoding(0) 返回 UTF-8,保持跨平台一致性。

如果未注册任何编码提供程序,则 GetEncoding(0) .NET Core 和更高版本中的所有平台上都返回 UTF-8。

属性

名称 说明
Instance

获取桌面 .NET Framework 中支持但当前 .NET Framework 平台不支持的代码页的编码提供程序。

方法

名称 说明
Equals(Object)

确定指定的对象是否等于当前对象。

(继承自 Object)
GetEncoding(Int32, EncoderFallback, DecoderFallback)

返回与指定代码页标识符关联的编码。 参数为无法编码的字符和无法解码的字节序列指定错误处理程序。

(继承自 EncodingProvider)
GetEncoding(Int32)

返回与指定代码页标识符关联的编码。

GetEncoding(String, EncoderFallback, DecoderFallback)

返回与指定名称关联的编码。 参数为无法编码的字符和无法解码的字节序列指定错误处理程序。

(继承自 EncodingProvider)
GetEncoding(String)

返回与指定代码页名称关联的编码。

GetEncodings()

返回一个数组,该数组包含 支持 CodePagesEncodingProvider的所有编码。

GetHashCode()

用作默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object的浅表副本。

(继承自 Object)
ToString()

返回一个表示当前对象的字符串。

(继承自 Object)

适用于