Utf8.ToUtf16 Metoda
Definicja
Ważny
Niektóre informacje dotyczą produktów przedpremierowych, które mogą zostać znacznie zmodyfikowane przed premierą. Microsoft nie udziela żadnych gwarancji, ani wyraźnych, ani domniemanych, dotyczących informacji podanych tutaj.
Konwertuje zakodowany w formacie UTF-8 zakres bajtów tylko do odczytu na zakres znaków zakodowanych w formacie 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>
Zakodowany w formacie UTF-8 zakres bajtów tylko do odczytu.
- bytesRead
- Int32
Gdy metoda zwraca wartość , liczba bajtów odczytanych z sourcemetody .
- charsWritten
- Int32
Gdy metoda zwróci wartość , liczba znaków zapisanych w obiekcie destination.
- replaceInvalidSequences
- Boolean
true aby zastąpić nieprawidłowe sekwencje UTF-8 w elemencie source U+FFFD; false aby powrócić InvalidData , jeśli w elemencie sourceznajdują się nieprawidłowe znaki.
- isFinalBlock
- Boolean
true jeśli metoda nie powinna zwracać NeedMoreDatawartości ; w przeciwnym razie false.
Zwraca
Wartość wskazująca stan konwersji.
Uwagi
Ta metoda odpowiada metodzie UTF8Encoding.GetChars , z tą różnicą, że ma inną konwencję wywoływania, różne mechanizmy obsługi błędów i różne cechy wydajności.
Jeśli parametr "replaceInvalidSequences" to true, metoda zastępuje wszystkie nieprawidłowo sformułowane podsekwencje w elemencie U+FFFD w sourcedestination i kontynuuje przetwarzanie pozostałej części buforu. W przeciwnym razie metoda zwraca OperationStatus.InvalidData wartość , jeśli napotka jakiekolwiek źle sformułowane sekwencje.
Jeśli metoda zwraca kod błędu, parametry out wskazują, ile danych zostało pomyślnie transkodowanych, a lokalizację nieprawidłowej podsekwencjonowania można wywieść z tych wartości.
Jeśli parametr "replaceInvalidSequences" ma truewartość , metoda nigdy nie zwraca wartości OperationStatus.InvalidData. Jeśli parametr "isFinalBlock" to true, metoda nigdy nie zwraca wartości OperationStatus.NeedMoreData.