Encoding.Convert Metódus

Definíció

Bájttömb konvertálása egyik kódolásból a másikba.

Túlterhelések

Name Description
Convert(Encoding, Encoding, Byte[], Int32, Int32)

Bájttartományt alakít át egy bájttömbben egyik kódolásból a másikba.

Convert(Encoding, Encoding, Byte[])

Egy teljes bájttömböt konvertál egyik kódolásból a másikba.

Convert(Encoding, Encoding, Byte[], Int32, Int32)

Forrás:
Encoding.cs
Forrás:
Encoding.cs
Forrás:
Encoding.cs
Forrás:
Encoding.cs
Forrás:
Encoding.cs

Bájttartományt alakít át egy bájttömbben egyik kódolásból a másikba.

public:
 static cli::array <System::Byte> ^ Convert(System::Text::Encoding ^ srcEncoding, System::Text::Encoding ^ dstEncoding, cli::array <System::Byte> ^ bytes, int index, int count);
public static byte[] Convert(System.Text.Encoding srcEncoding, System.Text.Encoding dstEncoding, byte[] bytes, int index, int count);
static member Convert : System.Text.Encoding * System.Text.Encoding * byte[] * int * int -> byte[]
Public Shared Function Convert (srcEncoding As Encoding, dstEncoding As Encoding, bytes As Byte(), index As Integer, count As Integer) As Byte()

Paraméterek

srcEncoding
Encoding

A forrástömb kódolása. bytes

dstEncoding
Encoding

A kimeneti tömb kódolása.

bytes
Byte[]

Az átalakítandó bájtok tömbje.

index
Int32

Az átalakítás első elemének indexe bytes .

count
Int32

Az átalakítandó bájtok száma.

Válaszok

Byte[]

Olyan típusú Byte tömb, amely a bájttartományok bytessrcEncodingdstEncodingközötti konvertálás eredményét tartalmazza.

Kivételek

srcEncoding az null.

-vagy-

dstEncoding az null.

-vagy-

bytes az null.

index és count ne adjon meg érvényes tartományt a bájttömbben.

Hiba történt (további információ: Acharacter kódolása a .NET)

-és-

srcEncoding.DecoderFallback beállítás értéke : DecoderExceptionFallback.

Hiba történt (további információ: Acharacter kódolása a .NET)

-és-

dstEncoding.EncoderFallback beállítás értéke : EncoderExceptionFallback.

A következőre érvényes:

Convert(Encoding, Encoding, Byte[])

Forrás:
Encoding.cs
Forrás:
Encoding.cs
Forrás:
Encoding.cs
Forrás:
Encoding.cs
Forrás:
Encoding.cs

Egy teljes bájttömböt konvertál egyik kódolásból a másikba.

public:
 static cli::array <System::Byte> ^ Convert(System::Text::Encoding ^ srcEncoding, System::Text::Encoding ^ dstEncoding, cli::array <System::Byte> ^ bytes);
public static byte[] Convert(System.Text.Encoding srcEncoding, System.Text.Encoding dstEncoding, byte[] bytes);
static member Convert : System.Text.Encoding * System.Text.Encoding * byte[] -> byte[]
Public Shared Function Convert (srcEncoding As Encoding, dstEncoding As Encoding, bytes As Byte()) As Byte()

Paraméterek

srcEncoding
Encoding

A kódolás formátuma bytes.

dstEncoding
Encoding

A célkódolási formátum.

bytes
Byte[]

Az átalakítandó bájtok.

Válaszok

Byte[]

Egy típustömbByte, amely a konvertálás bytessrcEncodingeredményét dstEncoding tartalmazza.

Kivételek

srcEncoding az null.

-vagy-

dstEncoding az null.

-vagy-

bytes az null.

Hiba történt (további információ: Acharacter kódolása a .NET)

-és-

srcEncoding.DecoderFallback beállítás értéke : DecoderExceptionFallback.

Hiba történt (további információ: Acharacter kódolása a .NET)

-és-

dstEncoding.EncoderFallback beállítás értéke : EncoderExceptionFallback.

Példák

Az alábbi példa egy Unicode-kódolású sztringet ASCII-kódolású sztringgé alakít át. Mivel a tulajdonság által ASCII visszaadott ASCII kódolási objektum csere tartalékot használ, és a Pi karakter nem része az ASCII-karakterkészletnek, a Pi karaktert kérdőjelre cseréli a példa kimenete.

using System;
using System.Text;

class ConvertExample
{
   static void Run()
   {
      string unicodeString = "This string contains the unicode character Pi (\u03a0)";

      // Create two different encodings.
      Encoding ascii = Encoding.ASCII;
      Encoding unicode = Encoding.Unicode;

      // Convert the string into a byte array.
      byte[] unicodeBytes = unicode.GetBytes(unicodeString);

      // Perform the conversion from one encoding to the other.
      byte[] asciiBytes = Encoding.Convert(unicode, ascii, unicodeBytes);
         
      // Convert the new byte[] into a char[] and then into a string.
      char[] asciiChars = new char[ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
      ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
      string asciiString = new string(asciiChars);

      // Display the strings created before and after the conversion.
      Console.WriteLine("Original string: {0}", unicodeString);
      Console.WriteLine("Ascii converted string: {0}", asciiString);
   }
}

// The example displays the following output:
//    Original string: This string contains the unicode character Pi (Π)
//    Ascii converted string: This string contains the unicode character Pi (?)
Imports System.Text

Class Example1
   Shared Sub Run()
      Dim unicodeString As String = "This string contains the unicode character Pi (" & ChrW(&H03A0) & ")"

      ' Create two different encodings.
      Dim ascii As Encoding = Encoding.ASCII
      Dim unicode As Encoding = Encoding.Unicode

      ' Convert the string into a byte array.
      Dim unicodeBytes As Byte() = unicode.GetBytes(unicodeString)

      ' Perform the conversion from one encoding to the other.
      Dim asciiBytes As Byte() = Encoding.Convert(unicode, ascii, unicodeBytes)

      ' Convert the new byte array into a char array and then into a string.
      Dim asciiChars(ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)-1) As Char
      ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0)
      Dim asciiString As New String(asciiChars)

      ' Display the strings created before and after the conversion.
      Console.WriteLine("Original string: {0}", unicodeString)
      Console.WriteLine("Ascii converted string: {0}", asciiString)
   End Sub
End Class
' The example displays the following output:
'    Original string: This string contains the unicode character Pi (Π)
'    Ascii converted string: This string contains the unicode character Pi (?)

A következőre érvényes: