BrotliStream.Read Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
Read(Span<Byte>) |
Odczytuje sekwencję bajtów z bieżącego strumienia Brotli do zakresu bajtów i rozwija pozycję w strumieniu Brotli według liczby odczytanych bajtów. |
Read(Byte[], Int32, Int32) |
Odczytuje liczbę dekompresowanych bajtów do określonej tablicy bajtów. |
Read(Span<Byte>)
Odczytuje sekwencję bajtów z bieżącego strumienia Brotli do zakresu bajtów i rozwija pozycję w strumieniu Brotli według liczby odczytanych bajtów.
public:
override int Read(Span<System::Byte> buffer);
public override int Read (Span<byte> buffer);
override this.Read : Span<byte> -> int
Public Overrides Function Read (buffer As Span(Of Byte)) As Integer
Parametry
Region pamięci. Gdy ta metoda zwróci, zawartość tego regionu jest zastępowana bajtami odczytanych z bieżącego źródła.
Zwraca
Całkowita liczba bajtów odczytanych do buforu. Może to być mniej niż liczba bajtów przydzielonych w buforze, jeśli liczba bajtów nie jest obecnie dostępna lub zero (0), jeśli koniec strumienia został osiągnięty.
Uwagi
Użyj właściwości , CanRead aby określić, czy bieżące wystąpienie obsługuje odczytywanie. System.IO.Compression.BrotliStream.ReadAsync
Użyj metody , aby odczytywać asynchronicznie z bieżącego strumienia.
Ta metoda odczytuje maksymalnie bajty `buffer.Length` z bieżącego strumienia i przechowuje je w buffer
pliku . Bieżąca pozycja w strumieniu Brotli jest zaawansowana przez liczbę odczytanych bajtów; jeśli jednak wystąpi wyjątek, bieżąca pozycja w strumieniu Brotli pozostaje niezmieniona. Ta metoda zablokuje do odczytu co najmniej jednego bajtu danych w przypadku, gdy żadne dane nie są dostępne. `Read` Zwraca wartość 0 tylko wtedy, gdy nie ma więcej danych w strumieniu i nie ma więcej danych (takich jak zamknięte gniazdo lub koniec pliku). Metoda jest bezpłatna, aby zwrócić mniej bajtów niż żądano, nawet jeśli koniec strumienia nie został osiągnięty.
Służy BinaryReader do odczytywania typów danych pierwotnych.
Dotyczy
Read(Byte[], Int32, Int32)
Odczytuje liczbę dekompresowanych bajtów do określonej tablicy bajtów.
public:
override int Read(cli::array <System::Byte> ^ buffer, int offset, int count);
public override int Read (byte[] buffer, int offset, int count);
override this.Read : byte[] * int * int -> int
Public Overrides Function Read (buffer As Byte(), offset As Integer, count As Integer) As Integer
Parametry
- buffer
- Byte[]
Tablica używana do przechowywania dekompresowanych bajtów.
- offset
- Int32
Przesunięcie bajtów, w buffer
którym zostaną umieszczone odczytane bajty.
- count
- Int32
Maksymalna liczba dekompresowanych bajtów do odczytu.
Zwraca
Liczba bajtów, które zostały zdekompresowane do tablicy bajtów. Jeśli osiągnięto koniec strumienia, zwracana jest wartość zero lub liczba odczytanych bajtów.
Wyjątki
buffer
to null
.
Wartość CompressionMode była Compress
wykonywana podczas tworzenia obiektu lub istnieje już aktywna operacja asynchroniczna w tym strumieniu.
offset
wartość lub count
jest mniejsza niż zero.
buffer
Długość minus punktu początkowego indeksu jest mniejsza niż count
.
Dane są w nieprawidłowym formacie.
Strumień bazowy ma wartość null lub jest zamknięty.