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