Encoding.Convert Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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 dizinin kodlaması, bytes
.
- dstEncoding
- Encoding
Çıkış dizisinin kodlaması.
- bytes
- Byte[]
Dönüştürülecek bayt dizisi.
- index
- Int32
Dönüştürülecek ilk öğesinin bytes
dizini.
- count
- Int32
Dönüştürülecek bayt sayısı.
Döndürülenler
içindeki bayt bytes
aralığını 'dan srcEncoding
'a dstEncoding
dönüştürmenin sonucunu içeren tür Byte dizisi.
Özel durumlar
srcEncoding
, null
değeridir.
-veya-
dstEncoding
, null
değeridir.
-veya-
bytes
, null
değeridir.
index
ve count
bayt dizisinde geçerli bir aralık belirtmeyin.
Geri dönüş oluştu (daha fazla bilgi için bkz. .NET'te Karakter Kodlama)
-Ve-
srcEncoding.DecoderFallback olarak ayarlanır DecoderExceptionFallback.
Geri dönüş oluştu (daha fazla bilgi için bkz. .NET'te Karakter Kodlama)
-Ve-
dstEncoding.EncoderFallback olarak ayarlanır EncoderExceptionFallback.
Ş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
kodlama biçimi bytes
.
- dstEncoding
- Encoding
Hedef kodlama biçimi.
- bytes
- Byte[]
Dönüştürülecek bayt sayısı.
Döndürülenler
türünden öğesine dönüştürmenin bytes
sonuçlarını içeren bir diziByte.srcEncoding
dstEncoding
Özel durumlar
srcEncoding
, null
değeridir.
-veya-
dstEncoding
, null
değeridir.
-veya-
bytes
, null
değeridir.
Geri dönüş oluştu (daha fazla bilgi için bkz. .NET'te Karakter Kodlama)
-Ve-
srcEncoding.DecoderFallback olarak ayarlanır DecoderExceptionFallback.
Geri dönüş oluştu (daha fazla bilgi için bkz. .NET'te Karakter Kodlama)
-Ve-
dstEncoding.EncoderFallback olarak ayarlanır EncoderExceptionFallback.
Örnekler
Aşağıdaki örnek, Unicode kodlamalı bir dizeyi ASCII ile kodlanmış bir dizeye dönüştürür. özelliği tarafından ASCII döndürülen ASCII kodlama nesnesi yedek geri dönüş kullandığından ve Pi karakteri ASCII karakter kümesinin bir parçası olmadığından, örnekte 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
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin