Decoder.GetChars Methode

Definition

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge in Zeichen decodiert.When overridden in a derived class, decodes a sequence of bytes into a set of characters.

Überlädt

GetChars(ReadOnlySpan<Byte>, Span<Char>, Boolean)

Decodiert beim Überschreiben in einer abgeleiteten Klasse eine Folge von Spannenbytes und alle Bytes im internen Puffer in eine Gruppe von Zeichen, die ab dem angegebenen Zeichenzeiger gespeichert werden.When overridden in a derived class, decodes a sequence of span bytes and any bytes in the internal buffer into a set of characters that are stored starting at the specified character pointer. Ein Parameter gibt an, ob der interne Zustand des Decoders nach der Konvertierung zu löschen ist.A parameter indicates whether to clear the internal state of the decoder after the conversion.

GetChars(Byte*, Int32, Char*, Int32, Boolean)

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge beginnend am angegebenen Bytezeiger einschließlich aller Bytes im internen Puffer in Zeichen decodiert, die ab Beginn des angegebenen Zeichenzeigers gespeichert werden.When overridden in a derived class, decodes a sequence of bytes starting at the specified byte pointer and any bytes in the internal buffer into a set of characters that are stored starting at the specified character pointer. Ein Parameter gibt an, ob der interne Zustand des Decoders nach der Konvertierung zu löschen ist.A parameter indicates whether to clear the internal state of the decoder after the conversion.

GetChars(Byte[], Int32, Int32, Char[], Int32)

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge aus dem angegebenen Bytearray einschließlich aller Bytes im internen Puffer in das angegebene Zeichenarray decodiert.When overridden in a derived class, decodes a sequence of bytes from the specified byte array and any bytes in the internal buffer into the specified character array.

GetChars(Byte[], Int32, Int32, Char[], Int32, Boolean)

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge aus dem angegebenen Bytearray einschließlich aller Bytes im internen Puffer in das angegebene Zeichenarray decodiert.When overridden in a derived class, decodes a sequence of bytes from the specified byte array and any bytes in the internal buffer into the specified character array. Ein Parameter gibt an, ob der interne Zustand des Decoders nach der Konvertierung zu löschen ist.A parameter indicates whether to clear the internal state of the decoder after the conversion.

GetChars(ReadOnlySpan<Byte>, Span<Char>, Boolean)

Decodiert beim Überschreiben in einer abgeleiteten Klasse eine Folge von Spannenbytes und alle Bytes im internen Puffer in eine Gruppe von Zeichen, die ab dem angegebenen Zeichenzeiger gespeichert werden.When overridden in a derived class, decodes a sequence of span bytes and any bytes in the internal buffer into a set of characters that are stored starting at the specified character pointer. Ein Parameter gibt an, ob der interne Zustand des Decoders nach der Konvertierung zu löschen ist.A parameter indicates whether to clear the internal state of the decoder after the conversion.

public:
 virtual int GetChars(ReadOnlySpan<System::Byte> bytes, Span<char> chars, bool flush);
public virtual int GetChars (ReadOnlySpan<byte> bytes, Span<char> chars, bool flush);
abstract member GetChars : ReadOnlySpan<byte> * Span<char> * bool -> int
override this.GetChars : ReadOnlySpan<byte> * Span<char> * bool -> int
Public Overridable Function GetChars (bytes As ReadOnlySpan(Of Byte), chars As Span(Of Char), flush As Boolean) As Integer

Parameter

bytes
ReadOnlySpan<Byte>

Eine zu decodierende Bytespanne.A byte span to decode.

chars
Span<Char>

Eine Spanne, in die die resultierende Gruppe von Zeichen geschrieben werden soll.A span to write the resulting set of characters.

flush
Boolean

true löscht nach der Konvertierung den internen Zustand des Decoders, andernfalls false.true to clear the internal state of the decoder after the conversion; otherwise, false.

Gibt zurück

Die tatsächliche Anzahl der Zeichen, die an der durch den chars-Parameter angegebenen Spanne geschrieben wurden.The actual number of characters written at the span indicated by the chars parameter.

Hinweise

Beachten Sie, dass das Decoder-Objekt den Status zwischen Aufrufen GetCharsspeichert.Remember that the Decoder object saves state between calls to GetChars. Wenn die Anwendung mit einem Datenstream ausgeführt wird, sollte Sie den flush-Parameter auf true festlegen, um sicherzustellen, dass die Zustandsinformationen geleert werden.When the application is done with a stream of data, it should set the flush parameter to true to make sure that the state information is flushed. Mit dieser Einstellung ignoriert der Decoder ungültige Bytes am Ende des Datenblocks und löscht den internen Puffer.With this setting, the decoder ignores invalid bytes at the end of the data block and clears the internal buffer.

Um die genaue spannen Größe zu berechnen, die GetChars zum Speichern der resultierenden Zeichen erfordert, sollte die Anwendung GetCharCountverwenden.To calculate the exact span size that GetChars requires to store the resulting characters, the application should use GetCharCount.

Wenn GetChars mit flush auf falsefestgelegt wird, speichert der Decoder nachfolgende Bytes am Ende des Datenblocks in einem internen Puffer und verwendet diese im nächsten Decodierungs Vorgang.If GetChars is called with flush set to false, the decoder stores trailing bytes at the end of the data block in an internal buffer and uses them in the next decoding operation. Die Anwendung sollte GetCharCount für einen Datenblock aufrufen, unmittelbar bevor Sie GetChars auf demselben Block aufrufen, sodass alle nachfolgenden Bytes aus dem vorherigen Block in die Berechnung eingeschlossen werden.The application should call GetCharCount on a block of data immediately before calling GetChars on the same block, so that any trailing bytes from the previous block are included in the calculation.

Wenn die Anwendung viele Segmente eines Eingabedaten Stroms konvertieren soll, sollten Sie die Convert-Methode verwenden.If your application is to convert many segments of an input stream, consider using the Convert method. GetChars löst eine Ausnahme aus, wenn die Ausgabe Spanne nicht groß genug ist, aber Convert wird so viel Speicherplatz wie möglich ausfüllen und die gelesenen und geschriebenen Bytes zurückgeben.GetChars will throw an exception if the output span isn't large enough, but Convert will fill as much space as possible and return the bytes read and chars written. Weitere Kommentare finden Sie auch im Encoding.GetChars Thema.Also see the Encoding.GetChars topic for more comments.

GetChars(Byte*, Int32, Char*, Int32, Boolean)

Wichtig

Diese API ist nicht CLS-kompatibel.

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge beginnend am angegebenen Bytezeiger einschließlich aller Bytes im internen Puffer in Zeichen decodiert, die ab Beginn des angegebenen Zeichenzeigers gespeichert werden.When overridden in a derived class, decodes a sequence of bytes starting at the specified byte pointer and any bytes in the internal buffer into a set of characters that are stored starting at the specified character pointer. Ein Parameter gibt an, ob der interne Zustand des Decoders nach der Konvertierung zu löschen ist.A parameter indicates whether to clear the internal state of the decoder after the conversion.

public:
 virtual int GetChars(System::Byte* bytes, int byteCount, char* chars, int charCount, bool flush);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Security.SecurityCritical]
public virtual int GetChars (byte* bytes, int byteCount, char* chars, int charCount, bool flush);
abstract member GetChars : nativeptr<byte> * int * nativeptr<char> * int * bool -> int
override this.GetChars : nativeptr<byte> * int * nativeptr<char> * int * bool -> int

Parameter

bytes
Byte*

Ein Zeiger auf das erste zu decodierende Byte.A pointer to the first byte to decode.

byteCount
Int32

Die Anzahl der zu decodierenden Bytes.The number of bytes to decode.

chars
Char*

Ein Zeiger auf die Position, an der mit dem Schreiben der sich ergebenden Zeichen begonnen werden soll.A pointer to the location at which to start writing the resulting set of characters.

charCount
Int32

Die maximale Anzahl der zu schreibenden Zeichen.The maximum number of characters to write.

flush
Boolean

true löscht nach der Konvertierung den internen Zustand des Decoders, andernfalls false.true to clear the internal state of the decoder after the conversion; otherwise, false.

Gibt zurück

Die tatsächliche Anzahl der Zeichen, die an der durch den chars-Parameter angegebenen Position geschrieben wurden.The actual number of characters written at the location indicated by the chars parameter.

Attribute

Ausnahmen

bytes ist null(Nothing).bytes is null (Nothing).

- oder --or-

chars ist null(Nothing).chars is null (Nothing).

byteCount oder charCount ist kleiner als 0.byteCount or charCount is less than zero.

charCount ist niedriger als die sich ergebende Anzahl von Zeichen.charCount is less than the resulting number of characters.

Es ist ein Fallback aufgetreten (weitere Informationen finden Sie unter Zeichencodierung in .NET).A fallback occurred (for more information, see Character Encoding in .NET)

-und--and-

Für Fallback ist DecoderExceptionFallback festgelegt.Fallback is set to DecoderExceptionFallback.

Hinweise

Beachten Sie, dass das Decoder-Objekt den Status zwischen Aufrufen GetCharsspeichert.Remember that the Decoder object saves state between calls to GetChars. Wenn die Anwendung mit einem Datenstream ausgeführt wird, sollte Sie den flush-Parameter auf true festlegen, um sicherzustellen, dass die Zustandsinformationen geleert werden.When the application is done with a stream of data, it should set the flush parameter to true to make sure that the state information is flushed. Mit dieser Einstellung ignoriert der Decoder ungültige Bytes am Ende des Datenblocks und löscht den internen Puffer.With this setting, the decoder ignores invalid bytes at the end of the data block and clears the internal buffer.

Zum Berechnen der exakten Puffergröße, die GetChars zum Speichern der resultierenden Zeichen erfordert, sollte die Anwendung GetCharCountverwenden.To calculate the exact buffer size that GetChars requires to store the resulting characters, the application should use GetCharCount.

Wenn GetChars mit flush auf falsefestgelegt wird, speichert der Decoder nachfolgende Bytes am Ende des Datenblocks in einem internen Puffer und verwendet diese im nächsten Decodierungs Vorgang.If GetChars is called with flush set to false, the decoder stores trailing bytes at the end of the data block in an internal buffer and uses them in the next decoding operation. Die Anwendung sollte GetCharCount für einen Datenblock aufrufen, unmittelbar bevor Sie GetChars auf demselben Block aufrufen, sodass alle nachfolgenden Bytes aus dem vorherigen Block in die Berechnung eingeschlossen werden.The application should call GetCharCount on a block of data immediately before calling GetChars on the same block, so that any trailing bytes from the previous block are included in the calculation.

Wenn die Anwendung viele Segmente eines Eingabedaten Stroms konvertieren soll, sollten Sie die Convert-Methode verwenden.If your application is to convert many segments of an input stream, consider using the Convert method. GetChars löst eine Ausnahme aus, wenn der Ausgabepuffer nicht groß genug ist, aber Convert wird so viel Speicherplatz wie möglich ausfüllen und die gelesenen und geschriebenen Bytes zurückgeben.GetChars will throw an exception if the output buffer isn't large enough, but Convert will fill as much space as possible and return the bytes read and chars written. Weitere Kommentare finden Sie auch im Encoding.GetChars Thema.Also see the Encoding.GetChars topic for more comments.

Sicherheit

SecurityCriticalAttribute
Erfordert volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer.Requires full trust for the immediate caller. Dieser Member kann nicht von teilweise vertrauenswürdigem oder transparentem Code verwendet werden.This member cannot be used by partially trusted or transparent code.

Siehe auch

GetChars(Byte[], Int32, Int32, Char[], Int32)

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge aus dem angegebenen Bytearray einschließlich aller Bytes im internen Puffer in das angegebene Zeichenarray decodiert.When overridden in a derived class, decodes a sequence of bytes from the specified byte array and any bytes in the internal buffer into the specified character array.

public:
 abstract int GetChars(cli::array <System::Byte> ^ bytes, int byteIndex, int byteCount, cli::array <char> ^ chars, int charIndex);
public abstract int GetChars (byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex);
abstract member GetChars : byte[] * int * int * char[] * int -> int
Public MustOverride Function GetChars (bytes As Byte(), byteIndex As Integer, byteCount As Integer, chars As Char(), charIndex As Integer) As Integer

Parameter

bytes
Byte[]

Das Bytearray, das die zu decodierende Bytefolge enthält.The byte array containing the sequence of bytes to decode.

byteIndex
Int32

Der Index des ersten zu decodierenden Bytes.The index of the first byte to decode.

byteCount
Int32

Die Anzahl der zu decodierenden Bytes.The number of bytes to decode.

chars
Char[]

Das Zeichenarray, das die sich ergebenden Zeichen enthalten soll.The character array to contain the resulting set of characters.

charIndex
Int32

Der Index, an dem mit dem Schreiben der sich ergebenden Zeichen begonnen werden soll.The index at which to start writing the resulting set of characters.

Gibt zurück

Die tatsächliche Anzahl der Zeichen, die in chars geschrieben werden.The actual number of characters written into chars.

Ausnahmen

bytes ist null(Nothing).bytes is null (Nothing).

- oder --or-

chars ist null(Nothing).chars is null (Nothing).

byteIndex, byteCount oder charIndex ist kleiner als 0 (null).byteIndex or byteCount or charIndex is less than zero.

- oder --or-

byteindex und byteCount geben keinen gültigen Bereich in bytes an.byteindex and byteCount do not denote a valid range in bytes.

- oder --or-

charIndex ist kein gültiger Index in chars.charIndex is not a valid index in chars.

chars hat von charIndex bis zum Ende des Arrays nicht genügend Kapazität, um die sich ergebenden Zeichen aufzunehmen.chars does not have enough capacity from charIndex to the end of the array to accommodate the resulting characters.

Es ist ein Fallback aufgetreten (weitere Informationen finden Sie unter Zeichencodierung in .NET).A fallback occurred (for more information, see Character Encoding in .NET)

-und--and-

Für Fallback ist DecoderExceptionFallback festgelegt.Fallback is set to DecoderExceptionFallback.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie Sie einen Bereich von Elementen aus einem Bytearray decodieren und in einem Array von Unicode-Zeichen speichern.The following example demonstrates how to decode a range of elements from a byte array and store them in a Unicode character array. Die GetCharCount-Methode wird verwendet, um die Anzahl der Zeichen zu berechnen, die zum Speichern der decodierten Elemente im Array bytesbenötigt werden.The GetCharCount method is used to calculate the number of characters needed to store the decoded elements in the array bytes. Die GetChars-Methode decodiert die angegebenen Elemente im Bytearray und speichert Sie im neuen Zeichen Array.The GetChars method decodes the specified elements in the byte array and stores them in the new character array.

using namespace System;
using namespace System::Text;
using namespace System::Collections;
int main()
{
   array<Char>^chars;
   array<Byte>^bytes = {85,0,110,0,105,0,99,0,111,0,100,0,101,0};
   Decoder^ uniDecoder = Encoding::Unicode->GetDecoder();
   int charCount = uniDecoder->GetCharCount( bytes, 0, bytes->Length );
   chars = gcnew array<Char>(charCount);
   int charsDecodedCount = uniDecoder->GetChars( bytes, 0, bytes->Length, chars, 0 );
   Console::WriteLine( "{0} characters used to decode bytes.", charsDecodedCount );
   Console::Write( "Decoded chars: " );
   IEnumerator^ myEnum = chars->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Char c = safe_cast<Char>(myEnum->Current);
      Console::Write( "[{0}]", c.ToString() );
   }

   Console::WriteLine();
}

/* This code example produces the following output.

7 characters used to decode bytes.
Decoded chars: [U][n][i][c][o][d][e]

*/

using System;
using System.Text;

class UnicodeEncodingExample {
    public static void Main() {
        Char[] chars;
        Byte[] bytes = new Byte[] {
            85, 0, 110, 0, 105, 0, 99, 0, 111, 0, 100, 0, 101, 0
        };

        Decoder uniDecoder = Encoding.Unicode.GetDecoder();

        int charCount = uniDecoder.GetCharCount(bytes, 0, bytes.Length);
        chars = new Char[charCount];
        int charsDecodedCount = uniDecoder.GetChars(bytes, 0, bytes.Length, chars, 0);

        Console.WriteLine(
            "{0} characters used to decode bytes.", charsDecodedCount
        );

        Console.Write("Decoded chars: ");
        foreach (Char c in chars) {
            Console.Write("[{0}]", c);
        }
        Console.WriteLine();
    }
}

/* This code example produces the following output.

7 characters used to decode bytes.
Decoded chars: [U][n][i][c][o][d][e]

*/
Imports System.Text

Class UnicodeEncodingExample
    
    Public Shared Sub Main()
        Dim chars() As Char
        Dim bytes() As Byte = { _
            85, 0, 110, 0, 105, 0, 99, 0, 111, 0, 100, 0, 101, 0 _
        }
        
        Dim uniDecoder As Decoder = Encoding.Unicode.GetDecoder()
        
        Dim charCount As Integer = uniDecoder.GetCharCount(bytes, 0, bytes.Length)
        chars = New Char(charCount - 1) {}
        Dim charsDecodedCount As Integer = _
            uniDecoder.GetChars(bytes, 0, bytes.Length, chars, 0)
        
        Console.WriteLine( _
            "{0} characters used to decode bytes.", _
            charsDecodedCount _
        )
        
        Console.Write("Decoded chars: ")
        Dim c As Char
        For Each c In  chars
            Console.Write("[{0}]", c)
        Next c
        Console.WriteLine()
    End Sub
End Class

'This code example produces the following output.
'
'7 characters used to decode bytes.
'Decoded chars: [U][n][i][c][o][d][e]
'

Hinweise

Beachten Sie, dass das Decoder-Objekt den Status zwischen Aufrufen GetCharsspeichert.Remember that the Decoder object saves state between calls to GetChars. Wenn die Anwendung mit einem Datenstream ausgeführt wird, sollte Sie den flush-Parameter auf true festlegen, um sicherzustellen, dass die Zustandsinformationen geleert werden.When the application is done with a stream of data, it should set the flush parameter to true to make sure that the state information is flushed. Mit dieser Einstellung ignoriert der Decoder ungültige Bytes am Ende des Datenblocks und löscht den internen Puffer.With this setting, the decoder ignores invalid bytes at the end of the data block and clears the internal buffer.

Um die genaue Array Größe zu berechnen, die GetChars zum Speichern der resultierenden Zeichen erfordert, sollte die Anwendung GetCharCountverwenden.To calculate the exact array size that GetChars requires to store the resulting characters, the application should use GetCharCount.

Wenn GetChars mit flush auf falsefestgelegt wird, speichert der Decoder nachfolgende Bytes am Ende des Datenblocks in einem internen Puffer und verwendet diese im nächsten Decodierungs Vorgang.If GetChars is called with flush set to false, the decoder stores trailing bytes at the end of the data block in an internal buffer and uses them in the next decoding operation. Die Anwendung sollte GetCharCount für einen Datenblock aufrufen, unmittelbar bevor Sie GetChars auf demselben Block aufrufen, sodass alle nachfolgenden Bytes aus dem vorherigen Block in die Berechnung eingeschlossen werden.The application should call GetCharCount on a block of data immediately before calling GetChars on the same block, so that any trailing bytes from the previous block are included in the calculation.

Wenn die Anwendung viele Segmente eines Eingabedaten Stroms konvertieren soll, sollten Sie die Convert-Methode verwenden.If your application is to convert many segments of an input stream, consider using the Convert method. GetChars löst eine Ausnahme aus, wenn der Ausgabepuffer nicht groß genug ist, aber Convert wird so viel Speicherplatz wie möglich ausfüllen und die gelesenen und geschriebenen Bytes zurückgeben.GetChars will throw an exception if the output buffer isn't large enough, but Convert will fill as much space as possible and return the bytes read and chars written. Weitere Kommentare finden Sie auch im Encoding.GetChars Thema.Also see the Encoding.GetChars topic for more comments.

Siehe auch

GetChars(Byte[], Int32, Int32, Char[], Int32, Boolean)

Beim Überschreiben in einer abgeleiteten Klasse wird eine Bytefolge aus dem angegebenen Bytearray einschließlich aller Bytes im internen Puffer in das angegebene Zeichenarray decodiert.When overridden in a derived class, decodes a sequence of bytes from the specified byte array and any bytes in the internal buffer into the specified character array. Ein Parameter gibt an, ob der interne Zustand des Decoders nach der Konvertierung zu löschen ist.A parameter indicates whether to clear the internal state of the decoder after the conversion.

public:
 virtual int GetChars(cli::array <System::Byte> ^ bytes, int byteIndex, int byteCount, cli::array <char> ^ chars, int charIndex, bool flush);
public virtual int GetChars (byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex, bool flush);
abstract member GetChars : byte[] * int * int * char[] * int * bool -> int
override this.GetChars : byte[] * int * int * char[] * int * bool -> int
Public Overridable Function GetChars (bytes As Byte(), byteIndex As Integer, byteCount As Integer, chars As Char(), charIndex As Integer, flush As Boolean) As Integer

Parameter

bytes
Byte[]

Das Bytearray, das die zu decodierende Bytefolge enthält.The byte array containing the sequence of bytes to decode.

byteIndex
Int32

Der Index des ersten zu decodierenden Bytes.The index of the first byte to decode.

byteCount
Int32

Die Anzahl der zu decodierenden Bytes.The number of bytes to decode.

chars
Char[]

Das Zeichenarray, das die sich ergebenden Zeichen enthalten soll.The character array to contain the resulting set of characters.

charIndex
Int32

Der Index, an dem mit dem Schreiben der sich ergebenden Zeichen begonnen werden soll.The index at which to start writing the resulting set of characters.

flush
Boolean

true löscht nach der Konvertierung den internen Zustand des Decoders, andernfalls false.true to clear the internal state of the decoder after the conversion; otherwise, false.

Gibt zurück

Die tatsächliche Anzahl der Zeichen, die in den chars-Parameter geschrieben wird.The actual number of characters written into the chars parameter.

Ausnahmen

bytes ist null(Nothing).bytes is null (Nothing).

- oder --or-

chars ist null(Nothing).chars is null (Nothing).

byteIndex, byteCount oder charIndex ist kleiner als 0 (null).byteIndex or byteCount or charIndex is less than zero.

- oder --or-

byteindex und byteCount geben keinen gültigen Bereich in bytes an.byteindex and byteCount do not denote a valid range in bytes.

- oder --or-

charIndex ist kein gültiger Index in chars.charIndex is not a valid index in chars.

chars hat von charIndex bis zum Ende des Arrays nicht genügend Kapazität, um die sich ergebenden Zeichen aufzunehmen.chars does not have enough capacity from charIndex to the end of the array to accommodate the resulting characters.

Es ist ein Fallback aufgetreten (weitere Informationen finden Sie unter Zeichencodierung in .NET).A fallback occurred (for more information, see Character Encoding in .NET)

-und--and-

Für Fallback ist DecoderExceptionFallback festgelegt.Fallback is set to DecoderExceptionFallback.

Hinweise

Beachten Sie, dass das Decoder-Objekt den Status zwischen Aufrufen GetCharsspeichert.Remember that the Decoder object saves state between calls to GetChars. Wenn die Anwendung mit einem Datenstream ausgeführt wird, sollte Sie den flush-Parameter auf true festlegen, um sicherzustellen, dass die Zustandsinformationen geleert werden.When the application is done with a stream of data, it should set the flush parameter to true to make sure that the state information is flushed. Mit dieser Einstellung ignoriert der Decoder ungültige Bytes am Ende des Datenblocks und löscht den internen Puffer.With this setting, the decoder ignores invalid bytes at the end of the data block and clears the internal buffer.

Um die genaue Array Größe zu berechnen, die GetChars zum Speichern der resultierenden Zeichen erfordert, sollte die Anwendung GetCharCountverwenden.To calculate the exact array size that GetChars requires to store the resulting characters, the application should use GetCharCount.

Wenn GetChars mit flush auf falsefestgelegt wird, speichert der Decoder nachfolgende Bytes am Ende des Datenblocks in einem internen Puffer und verwendet diese im nächsten Decodierungs Vorgang.If GetChars is called with flush set to false, the decoder stores trailing bytes at the end of the data block in an internal buffer and uses them in the next decoding operation. Die Anwendung sollte GetCharCount für einen Datenblock aufrufen, unmittelbar bevor Sie GetChars auf demselben Block aufrufen, sodass alle nachfolgenden Bytes aus dem vorherigen Block in die Berechnung eingeschlossen werden.The application should call GetCharCount on a block of data immediately before calling GetChars on the same block, so that any trailing bytes from the previous block are included in the calculation.

Wenn die Anwendung viele Segmente eines Eingabedaten Stroms konvertieren soll, sollten Sie die Convert-Methode verwenden.If your application is to convert many segments of an input stream, consider using the Convert method. GetChars löst eine Ausnahme aus, wenn der Ausgabepuffer nicht groß genug ist, aber Convert wird so viel Speicherplatz wie möglich ausfüllen und die gelesenen und geschriebenen Bytes zurückgeben.GetChars will throw an exception if the output buffer isn't large enough, but Convert will fill as much space as possible and return the bytes read and chars written. Weitere Kommentare finden Sie auch im Encoding.GetChars Thema.Also see the Encoding.GetChars topic for more comments.

Siehe auch

Gilt für: