Encoding.Convert Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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
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
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
Een matrix van het type Byte met de resultaten van het converteren bytes van srcEncoding naar dstEncoding.
Uitzonderingen
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 (?)