Utf8.ToUtf16 Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Převede bajtový rozsah s kódováním UTF-8 jen pro čtení na rozsah znaků s kódováním UTF-16.
public static System.Buffers.OperationStatus ToUtf16(ReadOnlySpan<byte> source, Span<char> destination, out int bytesRead, out int charsWritten, bool replaceInvalidSequences = true, bool isFinalBlock = true);
static member ToUtf16 : ReadOnlySpan<byte> * Span<char> * int * int * bool * bool -> System.Buffers.OperationStatus
Public Shared Function ToUtf16 (source As ReadOnlySpan(Of Byte), destination As Span(Of Char), ByRef bytesRead As Integer, ByRef charsWritten As Integer, Optional replaceInvalidSequences As Boolean = true, Optional isFinalBlock As Boolean = true) As OperationStatus
Parametry
- source
- ReadOnlySpan<Byte>
Bajtový rozsah s kódováním UTF-8 jen pro čtení.
- bytesRead
- Int32
Když metoda vrátí hodnotu , počet bajtů přečtených z sourcemetody .
- charsWritten
- Int32
Když metoda vrátí, počet znaků zapsaných do destination.
- replaceInvalidSequences
- Boolean
true k nahrazení neplatných sekvencí UTF-8 v souboru source pomocí U+FFFD; false k vrácení InvalidData , pokud jsou v sourcesouboru nalezeny neplatné znaky.
- isFinalBlock
- Boolean
true pokud metoda nemá vrátit NeedMoreDatahodnotu , jinak hodnota false.
Návraty
Hodnota, která označuje stav převodu.
Poznámky
Tato metoda odpovídá metodě UTF8Encoding.GetChars s výjimkou toho, že má jinou konvenci volání, různé mechanismy zpracování chyb a různé charakteristiky výkonu.
Pokud "replaceInvalidSequences" je true, metoda nahradí všechny špatně vytvořené subsequence v source souboru pomocí U+FFFD v a pokračuje ve destination zpracování zbytku vyrovnávací paměti. V opačném případě metoda vrátí OperationStatus.InvalidData , pokud narazí na nějaké špatně vytvořené sekvence.
Pokud metoda vrátí kód chyby, out parametry indikují, kolik dat bylo úspěšně překódováno a umístění špatně vytvořené dílčí sekvence lze odvodit z těchto hodnot.
Pokud je truereplaceInvalidSequences , metoda nikdy nevrátí OperationStatus.InvalidData. Pokud isFinalBlock je true, metoda nikdy nevrátí OperationStatus.NeedMoreData.