ASCIIEncoding.GetString Metoda

Definice

Přetížení

GetString(Byte[])
GetString(Byte[], Int32, Int32)

Dekóduje rozsah bajtů z pole bajtů do řetězce.

GetString(Byte[])

public override string GetString(byte[] bytes);

Parametry

bytes
Byte[]

Návraty

Platí pro

.NET Framework 1.1
Produkt Verze
.NET Framework 1.1

GetString(Byte[], Int32, Int32)

Zdroj:
ASCIIEncoding.cs
Zdroj:
ASCIIEncoding.cs
Zdroj:
ASCIIEncoding.cs

Dekóduje rozsah bajtů z pole bajtů do řetězce.

public override string GetString(byte[] bytes, int byteIndex, int byteCount);

Parametry

bytes
Byte[]

Pole bajtů obsahující posloupnost bajtů k dekódování.

byteIndex
Int32

Index prvního bajtu k dekódování.

byteCount
Int32

Počet bajtů k dekódování.

Návraty

Obsahující String výsledky dekódování zadané posloupnosti bajtů.

Výjimky

bytes je null.

index nebo count je menší než nula.

-nebo-

index a count neoznamují platnou oblast v bytessouboru .

Došlo k náhradnímu použití (další informace najdete v tématu Kódování znaků v .NET)

-A-

DecoderFallback je nastavená na DecoderExceptionFallbackhodnotu .

Příklady

Následující příklad ukazuje použití GetString metody k převodu pole bajtů na String.

using System;
using System.Text;

class Example 
{
    public static void Main() 
    {
        // Define a string.
        String original = "ASCII Encoding Example";
        // Instantiate an ASCII encoding object.
        ASCIIEncoding ascii = new ASCIIEncoding();
        
        // Create an ASCII byte array.
        Byte[] bytes = ascii.GetBytes(original); 
        
        // Display encoded bytes.
        Console.Write("Encoded bytes (in hex):  ");
        foreach (var value in bytes)
           Console.Write("{0:X2} ", value);
        Console.WriteLine();

        // Decode the bytes and display the resulting Unicode string.
        String decoded = ascii.GetString(bytes);
        Console.WriteLine("Decoded string: '{0}'", decoded);
    }
}
// The example displays the following output:
//     Encoded bytes (in hex):  41 53 43 49 49 20 45 6E 63 6F 64 69 6E 67 20 45 78 61 6D 70 6C 65
//     Decoded string: 'ASCII Encoding Example'

Poznámky

Data, která se mají převést, například data načtená z datového proudu, mohou být k dispozici pouze v sekvenčních blocích. V takovém případě nebo pokud je množství dat tak velké, že je potřeba je rozdělit na menší bloky, měla by aplikace použít metodu Decoder nebo Encoder metodu, která je poskytována GetDecoder metodou GetEncoder v uvedeném pořadí.

ASCIIEncoding neposkytuje detekci chyb. Jakýkoli bajt větší než hexadecimální 0x7F je dekódován jako otazník Unicode ("?").

Upozornění

Z bezpečnostních důvodů byste měli místo třídy použít UTF8Encodingtřídy , UnicodeEncodingnebo UTF32Encoding a povolit detekci ASCIIEncoding chyb.

Viz také

Platí pro

.NET 10 a další verze
Produkt Verze
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0