BlobInputStream Classe
- java.
lang. Object - InputStream
- com.
microsoft. azure. storage. blob. BlobInputStream
- com.
public class BlobInputStream
Fournit un flux d’entrée pour lire une ressource d’objet blob donnée.
Récapitulatif du constructeur
Constructeur | Description |
---|---|
BlobInputStream(final CloudBlob parentBlob, final AccessCondition accessCondition, final BlobRequestOptions options, final OperationContext opContext) |
Initialise une nouvelle instance de la classe BlobInputStream. |
BlobInputStream(long blobRangeOffset, Long blobRangeLength, final CloudBlob parentBlob, final AccessCondition accessCondition, final BlobRequestOptions options, final OperationContext opContext) |
Initialise une nouvelle instance de la classe BlobInputStream. Notez que si
|
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 d’objets blob désactive la vérification de l’objet blob 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 d’objets blob désactive la vérification de l’objet blob MD5. |
Détails du constructeur
BlobInputStream
protected BlobInputStream(final CloudBlob parentBlob, final AccessCondition accessCondition, final BlobRequestOptions options, final OperationContext opContext)
Initialise une nouvelle instance de la classe BlobInputStream.
Parameters:
Throws:
BlobInputStream
protected BlobInputStream(long blobRangeOffset, Long blobRangeLength, final CloudBlob parentBlob, final AccessCondition accessCondition, final BlobRequestOptions options, final OperationContext opContext)
Initialise une nouvelle instance de la classe BlobInputStream. Notez que siblobRangeOffset
</code> is not<code>0
</code> or<code>blobRangeLength
</code> is not<code>null
</code> , there will be no content MD5 verification.</p>
Parameters:
blobRangeOffset
- Décalage des données d’objet blob pour commencer le flux.
blobRangeLength
- Quantité de données que le flux doit retourner après blobRangeOffset.
parentBlob
- Objet CloudBlob qui représente l’objet blob auquel ce flux est associé.
accessCondition
- Objet AccessCondition qui représente les conditions d’accès pour l’objet blob.
options
- Objet BlobRequestOptions qui représente qui spécifie toutes 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:
True
si 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 d’objets blob désactive la vérification de l’objet blob 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 d’objets blob désactive la vérification de l’objet blob MD5.
Parameters:
n
- long
qui représente le nombre d’octets à ignorer.
S’applique à
Azure SDK for Java