Freigeben über


Encoding.BodyName-Eigenschaft

Beim Überschreiben in einer abgeleiteten Klasse wird ein Name für die aktuelle Codierung abgerufen, die mit den Body-Tags des E-Mail-Agenten verwendet werden kann.

Namespace: System.Text
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Overridable ReadOnly Property BodyName As String
'Usage
Dim instance As Encoding
Dim value As String

value = instance.BodyName
public virtual string BodyName { get; }
public:
virtual property String^ BodyName {
    String^ get ();
}
/** @property */
public String get_BodyName ()
public function get BodyName () : String

Eigenschaftenwert

Der Name der aktuellen Encoding-Klasse, die mit den Body-Tags des E-Mail-Agenten verwendet werden kann. - oder - Eine leere Zeichenfolge (""), wenn die aktuelle Encoding-Klasse nicht verwendet werden kann.

Beispiel

Im folgenden Codebeispiel wird eine Zeichenfolge mit UTF-7 codiert, bevor sie in einen Stream geschrieben wird.

Imports System
Imports System.IO
Imports System.Text
Imports Microsoft.VisualBasic

Namespace UTF7Example
    Public Class UTF7ExampleClass
        Public Shared Sub Main()
            Dim unicodeString As String = "This string contains the unicode character Pi(" & ChrW(&H03A0) & ")"

            ' Create a UTF7 encoding
            Dim utf7 As Encoding = Encoding.UTF7

            ' Converting to UTF7 encodes characters so that they will pass through
            ' ASCII systems such as email.
            Dim utf7Writer As New StreamWriter("output.txt", False, utf7)
            utf7Writer.WriteLine(utf7.BodyName)
            utf7Writer.WriteLine(unicodeString)
            utf7Writer.Flush()
            utf7Writer.Close()
        End Sub
    End Class
End Namespace
using System;
using System.IO;
using System.Text;

namespace UTF7Example
{
    public class UTF7ExampleClass
    {
        public static void Main() 
        {
            string unicodeString = "This string contains the unicode character Pi(\u03a0)";
            
            // Create a UTF7 encoding
            Encoding utf7 = Encoding.UTF7;

            // Converting to UTF7 encodes characters so that they will pass through
            // ASCII systems such as email.
            StreamWriter utf7Writer = new StreamWriter("output.txt", false, utf7);
            utf7Writer.WriteLine(utf7.BodyName);
            utf7Writer.WriteLine(unicodeString);
            utf7Writer.Flush();
            utf7Writer.Close();
        }
    }
}
using namespace System;
using namespace System::IO;
using namespace System::Text;
int main()
{
   String^ unicodeString = "This string contains the unicode character Pi(\u03a0)";
   
   // Create a UTF7 encoding
   Encoding^ utf7 = Encoding::UTF7;
   
   // Converting to UTF7 encodes characters so that they will pass through
   // ASCII systems such as email.
   StreamWriter^ utf7Writer = gcnew StreamWriter( "output.txt",false,utf7 );
   utf7Writer->WriteLine( utf7->BodyName );
   utf7Writer->WriteLine( unicodeString );
   utf7Writer->Flush();
   utf7Writer->Close();
}
package UTF7Example; 

import System.*;
import System.IO.*;
import System.Text.*;

public class UTF7ExampleClass
{
    public static void main(String[] args)
    {
        String unicodeString = 
            "This string contains the unicode character Pi(\u03a0)";

        // Create a UTF7 encoding
        Encoding utf7 = Encoding.get_UTF7();
        // Converting to UTF7 encodes characters so that they will pass through
        // ASCII systems such as email.
        StreamWriter utf7Writer = new StreamWriter("output.txt", false, utf7);
        utf7Writer.WriteLine(utf7.get_BodyName());
        utf7Writer.WriteLine(unicodeString);
        utf7Writer.Flush();
        utf7Writer.Close();
    } //main
} //UTF7ExampleClass

Im folgenden Codebeispiel werden die verschiedenen Namen für jede Codierung abgerufen und die Codierungen angezeigt, bei denen sich ein Name oder mehrere Namen von EncodingInfo.Name unterscheiden. EncodingName wird angezeigt, aber nicht für den Vergleich verwendet.

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)

*/

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

Encoding-Klasse
Encoding-Member
System.Text-Namespace
EncodingInfo.Name
EncodingName
HeaderName
WebName