Encoding.Convert Methode

Definitie

Converteert een bytematrix van de ene codering naar de andere.

Overloads

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

Converteert een bereik van bytes in een bytematrix van de ene codering naar de andere.

Convert(Encoding, Encoding, Byte[])

Converteert een hele bytematrix van de ene codering naar de andere.

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

Converteert een bereik van bytes in een bytematrix van de ene codering naar de andere.

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()

Parameters

srcEncoding
Encoding

De codering van de bronmatrix. bytes

dstEncoding
Encoding

De codering van de uitvoermatrix.

bytes
Byte[]

De matrix van bytes die moet worden geconverteerd.

index
Int32

De index van het eerste element dat bytes moet worden geconverteerd.

count
Int32

Het aantal bytes dat moet worden geconverteerd.

Retouren

Byte[]

Een matrix van het type Byte dat het resultaat bevat van het converteren van een bereik van bytes in bytes van srcEncoding naar dstEncoding.

Uitzonderingen

srcEncoding is null.

– of –

dstEncoding is null.

– of –

bytes is null.

index en count geef geen geldig bereik op in de bytematrix.

Er is een terugval opgetreden (zie Character Encoding in .NET)

en

srcEncoding.DecoderFallback is ingesteld op DecoderExceptionFallback.

Er is een terugval opgetreden (zie Character Encoding in .NET)

en

dstEncoding.EncoderFallback is ingesteld op EncoderExceptionFallback.

Van toepassing op

Convert(Encoding, Encoding, Byte[])

Converteert een hele bytematrix van de ene codering naar de andere.

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()

Parameters

srcEncoding
Encoding

De coderingsindeling van bytes.

dstEncoding
Encoding

De indeling van de doelcodering.

bytes
Byte[]

De bytes die moeten worden geconverteerd.

Retouren

Byte[]

Een matrix van het type Byte met de resultaten van het converteren bytes van srcEncoding naar dstEncoding.

Uitzonderingen

srcEncoding is null.

– of –

dstEncoding is null.

– of –

bytes is null.

Er is een terugval opgetreden (zie Character Encoding in .NET)

en

srcEncoding.DecoderFallback is ingesteld op DecoderExceptionFallback.

Er is een terugval opgetreden (zie Character Encoding in .NET)

en

dstEncoding.EncoderFallback is ingesteld op EncoderExceptionFallback.

Voorbeelden

In het volgende voorbeeld wordt een Unicode-gecodeerde tekenreeks geconverteerd naar een met ASCII gecodeerde tekenreeks. Omdat het ASCII-coderingsobject dat door de ASCII eigenschap wordt geretourneerd vervangende terugval gebruikt en het Pi-teken geen deel uitmaakt van de ASCII-tekenset, wordt het Pi-teken vervangen door een vraagteken, zoals de uitvoer uit het voorbeeld laat zien.

using System;
using System.Text;

class Example
{
   static void Main()
   {
      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 Example
   Shared Sub Main()
      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 (?)

Van toepassing op