Partager via


FileInputStream Classe

  • java.lang.Object
    • InputStream
      • com.microsoft.azure.storage.file.FileInputStream

public class FileInputStream

Fournit un flux d’entrée pour lire une ressource de fichier donnée.

Récapitulatif du constructeur

Constructeur Description
FileInputStream(final CloudFile parentFile, final AccessCondition accessCondition, final FileRequestOptions options, final OperationContext opContext)

Initialise une nouvelle instance de la classe FileInputStream.

Résumé de la méthode

Modificateur et type Méthode et description
synchronized int available()

Retourne une estimation du nombre d’octets pouvant être lus (ou ignorés) à partir de ce flux d’entrée sans bloquer par l’appel suivant d’une méthode pour ce flux d’entrée. L’appel suivant peut être le même thread ou un autre thread. Une seule lecture ou un saut de ce nombre d’octets ne bloque pas, mais peut lire ou ignorer moins d’octets.

synchronized void close()

Ferme ce flux d’entrée et libère toutes les ressources système associées au flux.

synchronized void mark(final int readlimit)

Marque la position actuelle dans ce flux d’entrée. Un appel suivant à la méthode de réinitialisation repositionne ce flux à la dernière position marquée afin que les lectures suivantes lisent à nouveau les mêmes octets.

boolean markSupported()

Teste si ce flux d’entrée prend en charge les méthodes de marque et de réinitialisation. La prise en charge du marquage et de la réinitialisation est une propriété invariante d’un flux d’entrée particulier instance. La méthode markSupported de InputStream retourne false.

int read()

Lit l’octet suivant des données à partir du flux d’entrée. L’octet de valeur est retourné sous la forme d’un int dans la plage 0 à 255. Si aucun octet n’est disponible car la fin du flux a été atteinte, la valeur -1 est retournée. Cette méthode bloque jusqu’à ce que les données d’entrée soient disponibles, que la fin du flux soit détectée ou qu’une exception soit levée.

int read(final byte[] b)

Lit un certain nombre d’octets du flux d’entrée et les stocke dans le tableau de mémoires tampons . Le nombre d’octets effectivement lus est retourné sous forme d’entier. Cette méthode bloque jusqu’à ce que les données d’entrée soient disponibles, que la fin du fichier soit détectée ou qu’une exception soit levée. Si la longueur de est égale à zéro, aucun octet n’est lu et 0 est retourné ; sinon, il y a une tentative de lecture d’au moins un octet. Si aucun octet n’est disponible, car le flux se trouve à la fin du fichier, la valeur -1 est retournée ; sinon, au moins un octet est lu et stocké dans .

La première lecture d’octet est stockée dans l’élément , la suivante dans , et ainsi de suite. Le nombre d’octets lus est, au plus, égal à la longueur de . Soit le nombre d’octets effectivement lus ; ces octets seront stockés dans des éléments via , laissant les éléments via non affectés.

La méthode pour la classe InputStream a le même effet que :

int read(final byte[] b, final int off, final int len)

Lit jusqu’à des octets de données du flux d’entrée dans un tableau d’octets. Une tentative de lecture est effectuée pour lire autant d’octets, mais un plus petit nombre peut être lu. Le nombre d’octets effectivement lus est retourné sous forme d’entier. Cette méthode bloque jusqu’à ce que les données d’entrée soient disponibles, que la fin du fichier soit détectée ou qu’une exception soit levée.

Si est zéro, aucun octet n’est lu et 0 est retourné ; sinon, il y a une tentative de lecture d’au moins un octet. Si aucun octet n’est disponible, car le flux se trouve à la fin du fichier, la valeur -1 est retournée ; sinon, au moins un octet est lu et stocké dans .

La première lecture d’octet est stockée dans l’élément , la suivante dans , et ainsi de suite. Le nombre d’octets lus est, au plus, égal à . Soit le nombre d’octets effectivement lus ; ces octets seront stockés dans des éléments via , laissant les éléments via non affectés.

Dans tous les cas, les éléments via et les éléments via ne sont pas affectés.

La méthode pour la classe InputStream appelle simplement la méthode à plusieurs reprises. Si le premier appel de ce type aboutit à un , cette exception est retournée à partir de l’appel à la méthode . Si un appel ultérieur à aboutit à un , l’exception est interceptée et traitée comme si elle était en fin de fichier ; les octets lus jusqu’à ce point sont stockés dans et le nombre d’octets lus avant l’exception est retourné. L’implémentation par défaut de cette méthode bloque jusqu’à ce que la quantité de données d’entrée demandée ait été lue, que la fin du fichier soit détectée ou qu’une exception soit levée. Les sous-classes sont encouragées à fournir une implémentation plus efficace de cette méthode.

synchronized void reset()

Repositionne ce flux à la position au moment où la méthode mark a été appelée pour la dernière fois sur ce flux d’entrée. Notez que le repositionnement du flux de lecture de fichier désactive la vérification du fichier MD5.

synchronized long skip(final long n)

Ignore et ignore n octets de données de ce flux d’entrée. La méthode skip peut, pour diverses raisons, finir par sauter sur un plus petit nombre d’octets, éventuellement 0. Cela peut résulter d’un certain nombre de conditions ; atteindre la fin du fichier avant que n octets aient été ignorés n’est qu’une seule possibilité. Le nombre réel d’octets ignorés est retourné. Si n est négatif, aucun octet n’est ignoré.

Notez que le repositionnement du flux de lecture de fichier désactive la vérification du fichier MD5.

Détails du constructeur

FileInputStream

protected FileInputStream(final CloudFile parentFile, final AccessCondition accessCondition, final FileRequestOptions options, final OperationContext opContext)

Initialise une nouvelle instance de la classe FileInputStream.

Parameters:

parentFile - Objet CloudFile qui représente le fichier auquel ce flux est associé.
accessCondition - Objet AccessCondition qui représente les conditions d’accès pour le fichier.
options - Objet FileRequestOptions qui représente qui spécifie les options supplémentaires pour la demande.
opContext - Objet OperationContext utilisé pour suivre l’exécution de l’opération.

Throws:

StorageException - Exception représentant toute erreur qui s’est produite pendant l’opération.

Détails de la méthode

available

public synchronized int available()

Retourne une estimation du nombre d’octets pouvant être lus (ou ignorés) à partir de ce flux d’entrée sans bloquer par l’appel suivant d’une méthode pour ce flux d’entrée. L’appel suivant peut être le même thread ou un autre thread. Une seule lecture ou un saut de ce nombre d’octets ne bloque pas, mais peut lire ou ignorer moins d’octets.

Returns:

int qui représente une estimation du nombre d’octets pouvant être lus (ou ignorés) à partir de ce flux d’entrée sans blocage, ou 0 lorsqu’il atteint la fin du flux d’entrée.

Throws:

IOException - Si une erreur d’E/S se produit.

close

public synchronized void close()

Ferme ce flux d’entrée et libère toutes les ressources système associées au flux.

Throws:

IOException - Si une erreur d’E/S se produit.

mark

public synchronized void mark(final int readlimit)

Marque la position actuelle dans ce flux d’entrée. Un appel suivant à la méthode de réinitialisation repositionne ce flux à la dernière position marquée afin que les lectures suivantes lisent à nouveau les mêmes octets.

Parameters:

readlimit - int qui représente la limite maximale d’octets pouvant être lus avant que la position de marque ne devienne non valide.

markSupported

public boolean markSupported()

Teste si ce flux d’entrée prend en charge les méthodes de marque et de réinitialisation. La prise en charge du marquage et de la réinitialisation est une propriété invariante d’un flux d’entrée particulier instance. La méthode markSupported de InputStream retourne false.

Returns:

Truesi ce flux instance prend en charge les méthodes de marque et de réinitialisation ; False sinon.

read

public int read()

Lit l’octet suivant des données à partir du flux d’entrée. L’octet de valeur est retourné sous la forme d’un int dans la plage 0 à 255. Si aucun octet n’est disponible car la fin du flux a été atteinte, la valeur -1 est retournée. Cette méthode bloque jusqu’à ce que les données d’entrée soient disponibles, que la fin du flux soit détectée ou qu’une exception soit levée.

Returns:

int qui représente le nombre total d’octets lus dans la mémoire tampon, ou -1 s’il n’y a plus de données, car la fin du flux a été atteinte.

Throws:

IOException - Si une erreur d’E/S se produit.

read

public int read(final byte[] b)

Lit un certain nombre d’octets du flux d’entrée et les stocke dans le tableau de mémoires tampons . Le nombre d’octets effectivement lus est retourné sous forme d’entier. Cette méthode bloque jusqu’à ce que les données d’entrée soient disponibles, que la fin du fichier soit détectée ou qu’une exception soit levée. Si la longueur de est égale à zéro, aucun octet n’est lu et 0 est retourné ; sinon, il y a une tentative de lecture d’au moins un octet. Si aucun octet n’est disponible, car le flux se trouve à la fin du fichier, la valeur -1 est retournée ; sinon, au moins un octet est lu et stocké dans .

La première lecture d’octet est stockée dans l’élément , la suivante dans , et ainsi de suite. Le nombre d’octets lus est, au plus, égal à la longueur de . Soit le nombre d’octets effectivement lus ; ces octets seront stockés dans des éléments via , laissant les éléments via non affectés.

La méthode pour la classe InputStream a le même effet que :

Parameters:

b - Tableau byte qui représente la mémoire tampon dans laquelle les données sont lues.

Throws:

IOException - Si le premier octet ne peut pas être lu pour une raison autre que la fin du fichier, si le flux d’entrée a été fermé ou si une autre erreur d’E/S se produit.
NullPointerException - Si le byte tableau b est null.

read

public int read(final byte[] b, final int off, final int len)

Lit jusqu’à des octets de données du flux d’entrée dans un tableau d’octets. Une tentative de lecture est effectuée pour lire autant d’octets, mais un plus petit nombre peut être lu. Le nombre d’octets effectivement lus est retourné sous forme d’entier. Cette méthode bloque jusqu’à ce que les données d’entrée soient disponibles, que la fin du fichier soit détectée ou qu’une exception soit levée.

Si est zéro, aucun octet n’est lu et 0 est retourné ; sinon, il y a une tentative de lecture d’au moins un octet. Si aucun octet n’est disponible, car le flux se trouve à la fin du fichier, la valeur -1 est retournée ; sinon, au moins un octet est lu et stocké dans .

La première lecture d’octet est stockée dans l’élément , la suivante dans , et ainsi de suite. Le nombre d’octets lus est, au plus, égal à . Soit le nombre d’octets effectivement lus ; ces octets seront stockés dans des éléments via , laissant les éléments via non affectés.

Dans tous les cas, les éléments via et les éléments via ne sont pas affectés.

La méthode pour la classe InputStream appelle simplement la méthode à plusieurs reprises. Si le premier appel de ce type aboutit à un , cette exception est retournée à partir de l’appel à la méthode . Si un appel ultérieur à aboutit à un , l’exception est interceptée et traitée comme si elle était en fin de fichier ; les octets lus jusqu’à ce point sont stockés dans et le nombre d’octets lus avant l’exception est retourné. L’implémentation par défaut de cette méthode bloque jusqu’à ce que la quantité de données d’entrée demandée ait été lue, que la fin du fichier soit détectée ou qu’une exception soit levée. Les sous-classes sont encouragées à fournir une implémentation plus efficace de cette méthode.

Parameters:

b - Tableau byte qui représente la mémoire tampon dans laquelle les données sont lues.
off - int qui représente le décalage de début dans le byte tableau sur lequel les données sont écrites.
len - int qui représente le nombre maximal d’octets à lire.

Returns:

int qui représente le nombre total d’octets lus dans la mémoire tampon, ou -1 s’il n’y a plus de données, car la fin du flux a été atteinte.

Throws:

IOException - Si le premier octet ne peut pas être lu pour une raison autre que la fin du fichier, ou si le flux d’entrée a été fermé ou si une autre erreur d’E/S se produit.
NullPointerException - Si le byte tableau b est null.
IndexOutOfBoundsException - Si off est négatif, len est négatif ou len supérieur à b.length - off.

reset

public synchronized void reset()

Repositionne ce flux à la position au moment où la méthode mark a été appelée pour la dernière fois sur ce flux d’entrée. Notez que le repositionnement du flux de lecture de fichier désactive la vérification du fichier MD5.

Throws:

IOException - Si ce flux n’a pas été marqué ou si la marque a été invalidée.

skip

public synchronized long skip(final long n)

Ignore et ignore n octets de données de ce flux d’entrée. La méthode skip peut, pour diverses raisons, finir par sauter sur un plus petit nombre d’octets, éventuellement 0. Cela peut résulter d’un certain nombre de conditions ; atteindre la fin du fichier avant que n octets aient été ignorés n’est qu’une seule possibilité. Le nombre réel d’octets ignorés est retourné. Si n est négatif, aucun octet n’est ignoré.

Notez que le repositionnement du flux de lecture de fichier désactive la vérification du fichier MD5.

Parameters:

n - long qui représente le nombre d’octets à ignorer.

S’applique à