Linguaggio

InputStream.Read Metodo

Definizione

Overload

Nome Descrizione
Read(Byte[], Int32, Int32)

Legge fino a len byte di dati dal flusso di input in una matrice di byte.

Read()

Legge il byte successivo dei dati dal flusso di input.

Read(Byte[])

Legge alcuni byte dal flusso di input e li archivia nella matrice di bbuffer .

Read(Byte[], Int32, Int32)

Legge fino a len byte di dati dal flusso di input in una matrice di byte.

[Android.Runtime.Register("read", "([BII)I", "GetRead_arrayBIIHandler")]
public virtual int Read(byte[]? b, int off, int len);
[<Android.Runtime.Register("read", "([BII)I", "GetRead_arrayBIIHandler")>]
abstract member Read : byte[] * int * int -> int
override this.Read : byte[] * int * int -> int

Parametri

b
Byte[]

buffer in cui vengono letti i dati.

off
Int32

offset iniziale nella matrice b in corrispondenza del quale vengono scritti i dati.

len
Int32

numero massimo di byte da leggere.

Valori restituiti

numero totale di byte letti nel buffer o -1 se non sono presenti altri dati perché è stata raggiunta la fine del flusso.

Attributi

Eccezioni

se byteOffset buffer.length.

se il flusso è chiuso o si verifica un'altra eccezione IOException.

Commenti

Legge fino a len byte di dati dal flusso di input in una matrice di byte. Viene effettuato un tentativo di leggere il numero di len byte, ma è possibile leggere un numero minore. Il numero di byte effettivamente letti viene restituito come numero intero.

Questo metodo blocca fino a quando non sono disponibili i dati di input, la fine del file o viene generata un'eccezione.

Se len è zero, non viene letto alcun byte e 0 viene restituito; in caso contrario, viene eseguito un tentativo di lettura di almeno un byte. Se non è disponibile alcun byte perché il flusso è alla fine del file, viene restituito il valore -1 ; in caso contrario, almeno un byte viene letto e archiviato in b.

Il primo byte letto viene archiviato nell'elemento b[off], quello successivo in b[off+1]e così via. Il numero di byte letti è, al massimo, uguale a len. Lasciare che k sia il numero di byte effettivamente letti; questi byte verranno archiviati negli elementi b[off] fino a b[off+k-1], lasciando gli elementi b[off+k] attraverso b[off+len-1] non interessati.

In ogni caso, gli elementi b[0] attraverso b[off-1] e b[off+len] tramite b[b.length-1] non sono interessati.

Il read(b, off, len) metodo per la classe InputStream chiama semplicemente il metodo read() ripetutamente. Se la prima chiamata di questo tipo genera un'eccezione IOException, tale eccezione viene restituita dalla chiamata al read(b,off,len) metodo . Se una chiamata successiva a read() restituisce un IOExceptionoggetto , l'eccezione viene intercettata e considerata come se fosse la fine del file. I byte letti fino a quel punto vengono archiviati in b e il numero di byte letti prima che venga restituita l'eccezione. L'implementazione predefinita di questo metodo si blocca fino a quando non viene rilevata la quantità richiesta di dati len di input, la fine del file o viene generata un'eccezione. Le sottoclassi sono incoraggiate a fornire un'implementazione più efficiente di questo metodo.

per java.io.InputStream.read(byte[], int, int).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Si applica a

Read()

Legge il byte successivo dei dati dal flusso di input.

[Android.Runtime.Register("read", "()I", "GetReadHandler")]
public abstract int Read();
[<Android.Runtime.Register("read", "()I", "GetReadHandler")>]
abstract member Read : unit -> int

Valori restituiti

il byte successivo dei dati o -1 se viene raggiunta la fine del flusso.

Attributi

Eccezioni

se il flusso è chiuso o si verifica un'altra eccezione IOException.

Commenti

Legge il byte successivo dei dati dal flusso di input. Il byte di valore viene restituito come oggetto int nell'intervallo 0 a 255. Se non è disponibile alcun byte perché è stata raggiunta la fine del flusso, viene restituito il valore -1 . Questo metodo blocca fino a quando non sono disponibili i dati di input, la fine del flusso o viene generata un'eccezione.

Una sottoclasse deve fornire un'implementazione di questo metodo.

per java.io.InputStream.read().

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Si applica a

Read(Byte[])

Legge alcuni byte dal flusso di input e li archivia nella matrice di bbuffer .

[Android.Runtime.Register("read", "([B)I", "GetRead_arrayBHandler")]
public virtual int Read(byte[]? b);
[<Android.Runtime.Register("read", "([B)I", "GetRead_arrayBHandler")>]
abstract member Read : byte[] -> int
override this.Read : byte[] -> int

Parametri

b
Byte[]

buffer in cui vengono letti i dati.

Valori restituiti

numero totale di byte letti nel buffer o -1 se non sono presenti altri dati perché è stata raggiunta la fine del flusso.

Attributi

Eccezioni

Commenti

Legge alcuni byte dal flusso di input e li archivia nella matrice di bbuffer . Il numero di byte effettivamente letti viene restituito come numero intero. Questo metodo blocca fino a quando non sono disponibili i dati di input, la fine del file o viene generata un'eccezione.

Se la lunghezza di b è zero, non vengono letti byte e 0 restituiti; in caso contrario, viene eseguito un tentativo di lettura di almeno un byte. Se non è disponibile alcun byte perché il flusso si trova alla fine del file, viene restituito il valore -1 ; in caso contrario, almeno un byte viene letto e archiviato in b.

Il primo byte letto viene archiviato nell'elemento b[0], quello successivo in b[1]e così via. Il numero di byte letti è, al massimo, uguale alla lunghezza di b. Lasciare che k sia il numero di byte effettivamente letti; questi byte verranno archiviati negli elementi b[0] fino a b[k-1], lasciando gli elementi b[k] attraverso b[b.length-1] non interessati.

Il read(b) metodo per la classe InputStream ha lo stesso effetto di:

{@code read(b, 0, b.length) }

per java.io.InputStream.read(byte[]).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Si applica a