Encoding.Convert Metod

Definition

Konverterar en bytematris från en kodning till en annan.

Överlagringar

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

Konverterar ett intervall med byte i en bytematris från en kodning till en annan.

Convert(Encoding, Encoding, Byte[])

Konverterar en hel bytematris från en kodning till en annan.

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

Källa:
Encoding.cs
Källa:
Encoding.cs
Källa:
Encoding.cs
Källa:
Encoding.cs
Källa:
Encoding.cs

Konverterar ett intervall med byte i en bytematris från en kodning till en annan.

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

Parametrar

srcEncoding
Encoding

Kodningen av källmatrisen, bytes.

dstEncoding
Encoding

Kodningen av utdatamatrisen.

bytes
Byte[]

Matrisen med byte som ska konverteras.

index
Int32

Indexet för det första elementet som ska konverteras bytes .

count
Int32

Antalet byte som ska konverteras.

Returer

Byte[]

En matris av typen Byte som innehåller resultatet av att konvertera ett byteintervall från bytessrcEncoding till dstEncoding.

Undantag

srcEncoding är null.

-eller-

dstEncoding är null.

-eller-

bytes är null.

index och count ange inte ett giltigt intervall i bytematrisen.

En reserv inträffade (mer information finns i Character Encoding i .NET)

-och-

srcEncoding.DecoderFallback är inställt på DecoderExceptionFallback.

En reserv inträffade (mer information finns i Character Encoding i .NET)

-och-

dstEncoding.EncoderFallback är inställt på EncoderExceptionFallback.

Gäller för

Convert(Encoding, Encoding, Byte[])

Källa:
Encoding.cs
Källa:
Encoding.cs
Källa:
Encoding.cs
Källa:
Encoding.cs
Källa:
Encoding.cs

Konverterar en hel bytematris från en kodning till en annan.

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

Parametrar

srcEncoding
Encoding

Kodningsformatet för bytes.

dstEncoding
Encoding

Målkodningsformatet.

bytes
Byte[]

Byte som ska konverteras.

Returer

Byte[]

En matris av typen Byte som innehåller resultatet av konvertering bytes från srcEncoding till dstEncoding.

Undantag

srcEncoding är null.

-eller-

dstEncoding är null.

-eller-

bytes är null.

En reserv inträffade (mer information finns i Character Encoding i .NET)

-och-

srcEncoding.DecoderFallback är inställt på DecoderExceptionFallback.

En reserv inträffade (mer information finns i Character Encoding i .NET)

-och-

dstEncoding.EncoderFallback är inställt på EncoderExceptionFallback.

Exempel

I följande exempel konverteras en Unicode-kodad sträng till en ASCII-kodad sträng. Eftersom ASCII-kodningsobjektet som returneras av ASCII egenskapen använder ersättningsåterställning och Pi-tecknet inte ingår i ASCII-teckenuppsättningen ersätts Pi-tecknet med ett frågetecken, som utdata från exemplet visar.

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

Gäller för