Aracılığıyla paylaş


Encoding.Convert Yöntem

Tanım

Bayt dizisini bir kodlamadan diğerine dönüştürür.

Aşırı Yüklemeler

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

Bayt dizisindeki bayt aralığını bir kodlamadan diğerine dönüştürür.

Convert(Encoding, Encoding, Byte[])

Bayt dizisinin tamamını bir kodlamadan diğerine dönüştürür.

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

Kaynak:
Encoding.cs
Kaynak:
Encoding.cs
Kaynak:
Encoding.cs

Bayt dizisindeki bayt aralığını bir kodlamadan diğerine dönüştürür.

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

Parametreler

srcEncoding
Encoding

kaynak dizisinin kodlaması, bytes.

dstEncoding
Encoding

Çıkış dizisinin kodlaması.

bytes
Byte[]

Dönüştürülecek bayt dizisi.

index
Int32

Dönüştürülecek bytes ilk öğesinin dizini.

count
Int32

Dönüştürülecek bayt sayısı.

Döndürülenler

Byte[]

bytes bayt aralığının srcEncoding'den dstEncodingdönüştürülmesinin sonucunu içeren Byte türünde bir dizi.

Özel durumlar

srcEncoding null.

-veya-

dstEncoding null.

-veya-

bytes null.

index ve count bayt dizisinde geçerli bir aralık belirtmez.

Geri dönüş oluştu (daha fazla bilgi için bkz. .NETKarakter Kodlaması )

-ve-

srcEncoding.DecoderFallbackDecoderExceptionFallbackolarak ayarlanır.

Geri dönüş oluştu (daha fazla bilgi için bkz. .NETKarakter Kodlaması )

-ve-

dstEncoding.EncoderFallbackEncoderExceptionFallbackolarak ayarlanır.

Şunlara uygulanır

Convert(Encoding, Encoding, Byte[])

Kaynak:
Encoding.cs
Kaynak:
Encoding.cs
Kaynak:
Encoding.cs

Bayt dizisinin tamamını bir kodlamadan diğerine dönüştürür.

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

Parametreler

srcEncoding
Encoding

byteskodlama biçimi.

dstEncoding
Encoding

Hedef kodlama biçimi.

bytes
Byte[]

Dönüştürülecek bayt sayısı.

Döndürülenler

Byte[]

bytes srcEncoding'den dstEncodingdönüştürmenin sonuçlarını içeren Byte türünde bir dizi.

Özel durumlar

srcEncoding null.

-veya-

dstEncoding null.

-veya-

bytes null.

Geri dönüş oluştu (daha fazla bilgi için bkz. .NETKarakter Kodlaması )

-ve-

srcEncoding.DecoderFallbackDecoderExceptionFallbackolarak ayarlanır.

Geri dönüş oluştu (daha fazla bilgi için bkz. .NETKarakter Kodlaması )

-ve-

dstEncoding.EncoderFallbackEncoderExceptionFallbackolarak ayarlanır.

Örnekler

Aşağıdaki örnek, Unicode kodlanmış bir dizeyi ASCII ile kodlanmış bir dizeye dönüştürür. ASCII özelliği tarafından döndürülen ASCII kodlama nesnesi yedek geri dönüş kullandığından ve Pi karakteri ASCII karakter kümesinin parçası olmadığından, örnekteki çıktıda gösterildiği gibi Pi karakteri bir soru işaretiyle değiştirilir.

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

Şunlara uygulanır