CodePagesEncodingProvider 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
为代码页提供对编码提供程序的访问权限,否则仅在桌面 .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
- 继承
- 属性
注解
适用于 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 使用。 若要使用这些其他代码页,请执行以下操作:
CodePagesEncodingProvider从静态CodePagesEncodingProvider.Instance属性检索对象。
将 CodePagesEncodingProvider 对象传递给 Encoding.RegisterProvider 方法。
注册对象 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) |