Encoding.CodePage 属性
在派生类中重写时,获取当前 Encoding 的代码页标识符。
**命名空间:**System.Text
**程序集:**mscorlib(在 mscorlib.dll 中)
语法
声明
Public Overridable ReadOnly Property CodePage As Integer
用法
Dim instance As Encoding
Dim value As Integer
value = instance.CodePage
public virtual int CodePage { get; }
public:
virtual property int CodePage {
int get ();
}
/** @property */
public int get_CodePage ()
public function get CodePage () : int
属性值
当前 Encoding 的代码页标识符。
示例
下面的代码示例检索每种编码的不同名称并用不同于 EncodingInfo.Name 的一个或多个名称显示这些编码。它显示 EncodingName,但不与它进行比较。
Imports System
Imports System.Text
Public Class SamplesEncoding
Public Shared Sub Main()
' Print the header.
Console.Write("Name ")
Console.Write("CodePage ")
Console.Write("BodyName ")
Console.Write("HeaderName ")
Console.Write("WebName ")
Console.WriteLine("Encoding.EncodingName")
' For every encoding, compare the name properties with EncodingInfo.Name.
' Display only the encodings that have one or more different names.
Dim ei As EncodingInfo
For Each ei In Encoding.GetEncodings()
Dim e As Encoding = ei.GetEncoding()
If ei.Name <> e.BodyName OrElse ei.Name <> e.HeaderName OrElse ei.Name <> e.WebName Then
Console.Write("{0,-18} ", ei.Name)
Console.Write("{0,-9} ", e.CodePage)
Console.Write("{0,-18} ", e.BodyName)
Console.Write("{0,-18} ", e.HeaderName)
Console.Write("{0,-18} ", e.WebName)
Console.WriteLine("{0} ", e.EncodingName)
End If
Next ei
End Sub 'Main
End Class 'SamplesEncoding
'This code produces the following output.
'
'Name CodePage BodyName HeaderName WebName Encoding.EncodingName
'shift_jis 932 iso-2022-jp iso-2022-jp shift_jis Japanese (Shift-JIS)
'windows-1250 1250 iso-8859-2 windows-1250 windows-1250 Central European (Windows)
'windows-1251 1251 koi8-r windows-1251 windows-1251 Cyrillic (Windows)
'Windows-1252 1252 iso-8859-1 Windows-1252 Windows-1252 Western European (Windows)
'windows-1253 1253 iso-8859-7 windows-1253 windows-1253 Greek (Windows)
'windows-1254 1254 iso-8859-9 windows-1254 windows-1254 Turkish (Windows)
'csISO2022JP 50221 iso-2022-jp iso-2022-jp csISO2022JP Japanese (JIS-Allow 1 byte Kana)
'iso-2022-kr 50225 iso-2022-kr euc-kr iso-2022-kr Korean (ISO)
using System;
using System.Text;
public class SamplesEncoding {
public static void Main() {
// Print the header.
Console.Write( "Name " );
Console.Write( "CodePage " );
Console.Write( "BodyName " );
Console.Write( "HeaderName " );
Console.Write( "WebName " );
Console.WriteLine( "Encoding.EncodingName" );
// For every encoding, compare the name properties with EncodingInfo.Name.
// Display only the encodings that have one or more different names.
foreach( EncodingInfo ei in Encoding.GetEncodings() ) {
Encoding e = ei.GetEncoding();
if (( ei.Name != e.BodyName ) || ( ei.Name != e.HeaderName ) || ( ei.Name != e.WebName )) {
Console.Write( "{0,-18} ", ei.Name );
Console.Write( "{0,-9} ", e.CodePage );
Console.Write( "{0,-18} ", e.BodyName );
Console.Write( "{0,-18} ", e.HeaderName );
Console.Write( "{0,-18} ", e.WebName );
Console.WriteLine( "{0} ", e.EncodingName );
}
}
}
}
/*
This code produces the following output.
Name CodePage BodyName HeaderName WebName Encoding.EncodingName
shift_jis 932 iso-2022-jp iso-2022-jp shift_jis Japanese (Shift-JIS)
windows-1250 1250 iso-8859-2 windows-1250 windows-1250 Central European (Windows)
windows-1251 1251 koi8-r windows-1251 windows-1251 Cyrillic (Windows)
Windows-1252 1252 iso-8859-1 Windows-1252 Windows-1252 Western European (Windows)
windows-1253 1253 iso-8859-7 windows-1253 windows-1253 Greek (Windows)
windows-1254 1254 iso-8859-9 windows-1254 windows-1254 Turkish (Windows)
csISO2022JP 50221 iso-2022-jp iso-2022-jp csISO2022JP Japanese (JIS-Allow 1 byte Kana)
iso-2022-kr 50225 iso-2022-kr euc-kr iso-2022-kr Korean (ISO)
*/
using namespace System;
using namespace System::Text;
int main()
{
// Print the header.
Console::Write( "Name " );
Console::Write( "CodePage " );
Console::Write( "BodyName " );
Console::Write( "HeaderName " );
Console::Write( "WebName " );
Console::WriteLine( "Encoding.EncodingName" );
// For every encoding, compare the name properties with EncodingInfo.Name.
// Display only the encodings that have one or more different names.
System::Collections::IEnumerator^ myEnum = Encoding::GetEncodings()->GetEnumerator();
while ( myEnum->MoveNext() )
{
EncodingInfo ^ ei = safe_cast<EncodingInfo ^>(myEnum->Current);
Encoding^ e = ei->GetEncoding();
if ( !ei->Name->Equals( e->BodyName ) || !ei->Name->Equals( e->HeaderName ) || !ei->Name->Equals( e->WebName ) )
{
Console::Write( "{0,-18} ", ei->Name );
Console::Write( "{0,-9} ", e->CodePage );
Console::Write( "{0,-18} ", e->BodyName );
Console::Write( "{0,-18} ", e->HeaderName );
Console::Write( "{0,-18} ", e->WebName );
Console::WriteLine( "{0} ", e->EncodingName );
}
}
}
/*
This code produces the following output.
Name CodePage BodyName HeaderName WebName Encoding.EncodingName
shift_jis 932 iso-2022-jp iso-2022-jp shift_jis Japanese (Shift-JIS)
windows-1250 1250 iso-8859-2 windows-1250 windows-1250 Central European (Windows)
windows-1251 1251 koi8-r windows-1251 windows-1251 Cyrillic (Windows)
Windows-1252 1252 iso-8859-1 Windows-1252 Windows-1252 Western European (Windows)
windows-1253 1253 iso-8859-7 windows-1253 windows-1253 Greek (Windows)
windows-1254 1254 iso-8859-9 windows-1254 windows-1254 Turkish (Windows)
csISO2022JP 50221 iso-2022-jp iso-2022-jp csISO2022JP Japanese (JIS-Allow 1 byte Kana)
iso-2022-kr 50225 iso-2022-kr euc-kr iso-2022-kr Korean (ISO)
*/
import System.*;
import System.Text.*;
public class SamplesEncoding
{
public static void main(String[] args)
{
// Print the header.
Console.Write("Name ");
Console.Write("CodePage ");
Console.Write("BodyName ");
Console.Write("HeaderName ");
Console.Write("WebName ");
Console.WriteLine("Encoding.EncodingName");
EncodingInfo ei[] = Encoding.GetEncodings();
for(int iCtr = 0; iCtr < ei.length; iCtr++) {
Encoding e = ei[iCtr].GetEncoding();
if(!(ei[iCtr].get_Name().equalsIgnoreCase(e.get_BodyName()))
|| !(ei[iCtr].get_Name().equalsIgnoreCase(e.get_HeaderName()))
|| !(ei[iCtr].get_Name().equalsIgnoreCase(e.get_WebName()))) {
Console.Write("{0,-18} ", ei[iCtr].get_Name());
Console.Write("{0,-9} ", String.valueOf(e.get_CodePage()));
Console.Write("{0,-18} ", e.get_BodyName());
Console.Write("{0,-18} ", e.get_HeaderName());
Console.Write("{0,-18} ", e.get_WebName());
Console.WriteLine("{0} ", e.get_EncodingName());
}
}
} //main
} //SamplesEncoding
/*
This code produces the following output.
Name CodePage BodyName HeaderName WebName
Encoding.EncodingName
shift_jis 932 iso-2022-jp iso-2022-jp shift_jis
Japanese (Shift-JIS)
windows-1250 1250 iso-8859-2 windows-1250 windows-1250
Central European (Windows)
windows-1251 1251 koi8-r windows-1251 windows-1251
Cyrillic (Windows)
Windows-1252 1252 iso-8859-1 Windows-1252 Windows-1252
Western European (Windows)
windows-1253 1253 iso-8859-7 windows-1253 windows-1253
Greek (Windows)
windows-1254 1254 iso-8859-9 windows-1254 windows-1254
Turkish (Windows)
csISO2022JP 50221 iso-2022-jp iso-2022-jp csISO2022JP
Japanese (JIS-Allow 1 byte Kana)
iso-2022-kr 50225 iso-2022-kr euc-kr iso-2022-kr
Korean (ISO)
*/
平台
Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition
.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。
版本信息
.NET Framework
受以下版本支持:2.0、1.1、1.0
.NET Compact Framework
受以下版本支持:2.0、1.0
请参见
参考
Encoding 类
Encoding 成员
System.Text 命名空间
EncodingInfo.CodePage
WindowsCodePage