Encoding.Convert Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Převede pole bajtů z jednoho kódování do jiného.
Přetížení
Convert(Encoding, Encoding, Byte[], Int32, Int32) |
Převede rozsah bajtů v bajtovém poli z jednoho kódování do jiného. |
Convert(Encoding, Encoding, Byte[]) |
Převede celé pole bajtů z jednoho kódování do jiného. |
Convert(Encoding, Encoding, Byte[], Int32, Int32)
- Zdroj:
- Encoding.cs
- Zdroj:
- Encoding.cs
- Zdroj:
- Encoding.cs
Převede rozsah bajtů v bajtovém poli z jednoho kódování do jiného.
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()
Parametry
- srcEncoding
- Encoding
Kódování zdrojového pole . bytes
- dstEncoding
- Encoding
Kódování výstupního pole.
- bytes
- Byte[]
Pole bajtů, které se mají převést.
- index
- Int32
Index prvního prvku převést bytes
.
- count
- Int32
Počet bajtů, které se mají převést.
Návraty
Pole typu Byte obsahující výsledek převodu rozsahu bajtů z bytes
srcEncoding
na dstEncoding
.
Výjimky
index
a count
nezadávejte platný rozsah v bajtovém poli.
Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET)
-A-
srcEncoding.DecoderFallback je nastavená na DecoderExceptionFallbackhodnotu .
Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET)
-A-
dstEncoding.EncoderFallback je nastavená na EncoderExceptionFallbackhodnotu .
Platí pro
Convert(Encoding, Encoding, Byte[])
- Zdroj:
- Encoding.cs
- Zdroj:
- Encoding.cs
- Zdroj:
- Encoding.cs
Převede celé pole bajtů z jednoho kódování do jiného.
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()
Parametry
- srcEncoding
- Encoding
Formát kódování pro bytes
.
- dstEncoding
- Encoding
Cílový formát kódování.
- bytes
- Byte[]
Bajty, které se mají převést.
Návraty
Pole typu Byte obsahující výsledky převodu bytes
z srcEncoding
na dstEncoding
.
Výjimky
Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET)
-A-
srcEncoding.DecoderFallback je nastavená na DecoderExceptionFallbackhodnotu .
Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET)
-A-
dstEncoding.EncoderFallback je nastavená na EncoderExceptionFallbackhodnotu .
Příklady
Následující příklad převede řetězec s kódováním Unicode na řetězec kódovaný ASCII. Vzhledem k tomu, že objekt kódování ASCII vrácený ASCII vlastností používá náhradní náhradní znak a znak pí není součástí znakové sady ASCII, znak pí je nahrazen otazníkem, jak ukazuje výstup z příkladu.
using namespace System;
using namespace System::Text;
int 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.
array<Byte>^unicodeBytes = unicode->GetBytes( unicodeString );
// Perform the conversion from one encoding to the other.
array<Byte>^asciiBytes = Encoding::Convert( unicode, ascii, unicodeBytes );
// Convert the new Byte into[] a char and[] then into a string.
array<Char>^asciiChars = gcnew array<Char>(ascii->GetCharCount( asciiBytes, 0, asciiBytes->Length ));
ascii->GetChars( asciiBytes, 0, asciiBytes->Length, asciiChars, 0 );
String^ asciiString = gcnew 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 (?)
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 (?)
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro