Encoding.Convert Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Converte una matrice di byte da una codifica a un'altra.
Overload
Convert(Encoding, Encoding, Byte[], Int32, Int32) |
Converte un intervallo di byte in una matrice di byte da una codifica a un'altra. |
Convert(Encoding, Encoding, Byte[]) |
Converte un'intera matrice di byte da una codifica a un'altra. |
Convert(Encoding, Encoding, Byte[], Int32, Int32)
- Origine:
- Encoding.cs
- Origine:
- Encoding.cs
- Origine:
- Encoding.cs
Converte un intervallo di byte in una matrice di byte da una codifica a un'altra.
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()
Parametri
- srcEncoding
- Encoding
Codifica della matrice di origine, bytes
.
- dstEncoding
- Encoding
Codifica della matrice di output.
- bytes
- Byte[]
Matrice di byte da convertire.
- index
- Int32
Indice del primo elemento di bytes
da convertire.
- count
- Int32
Numero di byte da convertire.
Restituisce
Matrice di tipo Byte contenente il risultato della conversione di un intervallo di byte in bytes
da srcEncoding
a dstEncoding
.
Eccezioni
index
e count
non specificano un intervallo valido nella matrice di byte.
Si è verificato un fallback (per altre informazioni, vedere codifica dei caratteri in .NET)
-e-
srcEncoding.DecoderFallback è impostato su DecoderExceptionFallback.
Si è verificato un fallback (per altre informazioni, vedere codifica dei caratteri in .NET)
-e-
dstEncoding.EncoderFallback è impostato su EncoderExceptionFallback.
Si applica a
Convert(Encoding, Encoding, Byte[])
- Origine:
- Encoding.cs
- Origine:
- Encoding.cs
- Origine:
- Encoding.cs
Converte un'intera matrice di byte da una codifica a un'altra.
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()
Parametri
- srcEncoding
- Encoding
Formato di codifica di bytes
.
- dstEncoding
- Encoding
Formato di codifica di destinazione.
- bytes
- Byte[]
Byte da convertire.
Restituisce
Matrice di tipo Byte contenente i risultati della conversione di bytes
da srcEncoding
a dstEncoding
.
Eccezioni
Si è verificato un fallback (per altre informazioni, vedere codifica dei caratteri in .NET)
-e-
srcEncoding.DecoderFallback è impostato su DecoderExceptionFallback.
Si è verificato un fallback (per altre informazioni, vedere codifica dei caratteri in .NET)
-e-
dstEncoding.EncoderFallback è impostato su EncoderExceptionFallback.
Esempio
L'esempio seguente converte una stringa con codifica Unicode in una stringa con codifica ASCII. Poiché l'oggetto di codifica ASCII restituito dalla proprietà ASCII utilizza il fallback sostitutivo e il carattere Pi non fa parte del set di caratteri ASCII, il carattere Pi viene sostituito con un punto interrogativo, come illustrato nell'output dell'esempio.
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 (?)