Freigeben über


FileInputStream Klasse

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

public class FileInputStream

Stellt einen Eingabestream zum Lesen einer bestimmten Dateiressource bereit.

Zusammenfassung zum Konstruktor

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

Initialisiert eine neue instance der FileInputStream-Klasse.

Methodenzusammenfassung

Modifizierer und Typ Methode und Beschreibung
synchronized int available()

Gibt eine Schätzung der Anzahl von Bytes zurück, die aus diesem Eingabedatenstrom gelesen (oder übersprungen werden können), ohne dass durch den nächsten Aufruf einer Methode für diesen Eingabedatenstrom blockiert wird. Der nächste Aufruf kann derselbe Thread oder ein anderer Thread sein. Ein einzelner Lese- oder Überspringen dieser vielen Bytes wird nicht blockiert, aber möglicherweise weniger Bytes gelesen oder übersprungen.

synchronized void close()

Schließt diesen Eingabedatenstrom und gibt alle Systemressourcen frei, die dem Stream zugeordnet sind.

synchronized void mark(final int readlimit)

Markiert die aktuelle Position in diesem Eingabedatenstrom. Durch einen nachfolgenden Aufruf der Reset-Methode wird dieser Stream an der letzten markierten Position neu positioniert, sodass nachfolgende Lesevorgänge dieselben Bytes erneut lesen.

boolean markSupported()

Testet, ob dieser Eingabedatenstrom die Markierungs- und Zurücksetzungsmethoden unterstützt. Ob Markierung und Zurücksetzen unterstützt werden, ist eine invariante Eigenschaft eines bestimmten Eingabestreams instance. Die markSupported-Methode von InputStream gibt false zurück.

int read()

Liest das nächste Byte von Daten aus dem Eingabedatenstrom. Der Wert byte wird als int im Bereich von 0 bis 255 zurückgegeben. Wenn kein Byte verfügbar ist, weil das Ende des Datenstroms erreicht wurde, wird der Wert -1 zurückgegeben. Diese Methode blockiert, bis Eingabedaten verfügbar sind, das Ende des Datenstroms erkannt oder eine Ausnahme ausgelöst wird.

int read(final byte[] b)

Liest eine gewisse Anzahl von Bytes aus dem Eingabedatenstrom und speichert sie im Pufferarray . Die Anzahl der tatsächlich gelesenen Bytes wird als ganze Zahl zurückgegeben. Diese Methode blockiert, bis Eingabedaten verfügbar sind, das Ende der Datei erkannt oder eine Ausnahme ausgelöst wird. Wenn die Länge von 0 ist, werden keine Bytes gelesen und 0 zurückgegeben. andernfalls wird versucht, mindestens ein Byte zu lesen. Wenn kein Byte verfügbar ist, weil sich der Stream am Ende der Datei befindet, wird der Wert -1 zurückgegeben. andernfalls wird mindestens ein Byte gelesen und in gespeichert.

Das erste Bytelese wird im Element gespeichert, das nächste in usw. Die Anzahl der gelesenen Bytes entspricht höchstens der Länge von . Lassen Sie uns die Anzahl der tatsächlich gelesenen Bytes sein. diese Bytes werden in Elementen über gespeichert, wobei Elemente nicht betroffen bleiben.

Die -Methode für die -Klasse InputStream hat die gleiche Auswirkung wie:

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

Liest bis zu Bytes von Daten aus dem Eingabedatenstrom in ein Bytearray ein. Es wird versucht, bis zu Bytes zu lesen, aber möglicherweise wird eine kleinere Zahl gelesen. Die Anzahl der tatsächlich gelesenen Bytes wird als ganze Zahl zurückgegeben. Diese Methode blockiert, bis Eingabedaten verfügbar sind, das Ende der Datei erkannt oder eine Ausnahme ausgelöst wird.

Wenn null ist, werden keine Bytes gelesen und 0 zurückgegeben. andernfalls wird versucht, mindestens ein Byte zu lesen. Wenn kein Byte verfügbar ist, weil sich der Stream am Ende der Datei befindet, wird der Wert -1 zurückgegeben. andernfalls wird mindestens ein Byte gelesen und in gespeichert.

Das erste Bytelese wird im Element gespeichert, das nächste in usw. Die Anzahl der gelesenen Bytes entspricht höchstens . Lassen Sie uns die Anzahl der tatsächlich gelesenen Bytes sein. diese Bytes werden in Elementen über gespeichert, wobei Elemente nicht betroffen bleiben.

In jedem Fall bleiben Elemente durch und Elemente durch unberührt.

Die -Methode für -Klasse InputStream ruft die Methode einfach wiederholt auf. Wenn der erste solche Aufruf zu einem führt, wird diese Ausnahme vom Aufruf der -Methode zurückgegeben. Wenn ein späterer Aufruf von zu einem führt, wird die Ausnahme abgefangen und behandelt, als wäre sie das Ende der Datei; Die bis zu diesem Punkt gelesenen Bytes werden in gespeichert, und die Anzahl der Bytes, die gelesen wurden, bevor die Ausnahme aufgetreten ist, wird zurückgegeben. Die Standardimplementierung dieser Methode blockiert, bis die angeforderte Menge an Eingabedaten gelesen, das Ende der Datei erkannt oder eine Ausnahme ausgelöst wurde. Unterklassen werden empfohlen, eine effizientere Implementierung dieser Methode bereitzustellen.

synchronized void reset()

Positioniert diesen Stream an der Position zum Zeitpunkt, an dem die mark-Methode zuletzt für diesen Eingabedatenstrom aufgerufen wurde. Beachten Sie, dass durch die Neupositionierung des Dateilesestreams die Datei MD5-Überprüfung deaktiviert wird.

synchronized long skip(final long n)

Überspringt und verwirft n Bytes Daten aus diesem Eingabedatenstrom. Die Skip-Methode kann aus einer Vielzahl von Gründen am Ende eine kleinere Anzahl von Bytes überspringen, möglicherweise 0. Dies kann sich aus einer Reihe von Bedingungen ergeben; Das Erreichen des Dateiendes, bevor n Bytes übersprungen wurden, ist nur eine Möglichkeit. Die tatsächliche Anzahl übersprungener Bytes wird zurückgegeben. Wenn n negativ ist, werden keine Bytes übersprungen.

Beachten Sie, dass durch die Neupositionierung des Dateilesestreams die Datei MD5-Überprüfung deaktiviert wird.

Details zum Konstruktor

FileInputStream

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

Initialisiert eine neue instance der FileInputStream-Klasse.

Parameters:

parentFile - Ein CloudFile -Objekt, das die Datei darstellt, der dieser Stream zugeordnet ist.
accessCondition - Ein AccessCondition -Objekt, das die Zugriffsbedingungen für die Datei darstellt.
options - Ein FileRequestOptions -Objekt, das alle zusätzlichen Optionen für die Anforderung angibt.
opContext - Ein OperationContext -Objekt, das verwendet wird, um die Ausführung des Vorgangs nachzuverfolgen.

Throws:

StorageException - Eine Ausnahme, die alle Fehler darstellt, die während des Vorgangs aufgetreten sind.

Details zur Methode

available

public synchronized int available()

Gibt eine Schätzung der Anzahl von Bytes zurück, die aus diesem Eingabedatenstrom gelesen (oder übersprungen werden können), ohne dass durch den nächsten Aufruf einer Methode für diesen Eingabedatenstrom blockiert wird. Der nächste Aufruf kann derselbe Thread oder ein anderer Thread sein. Ein einzelner Lese- oder Überspringen dieser vielen Bytes wird nicht blockiert, aber möglicherweise weniger Bytes gelesen oder übersprungen.

Returns:

Ein int , der eine Schätzung der Anzahl von Bytes darstellt, die aus diesem Eingabedatenstrom gelesen (oder übersprungen werden können), ohne zu blockieren, oder 0, wenn er das Ende des Eingabedatenstroms erreicht.

Throws:

IOException - Wenn ein E/A-Fehler auftritt.

close

public synchronized void close()

Schließt diesen Eingabedatenstrom und gibt alle Systemressourcen frei, die dem Stream zugeordnet sind.

Throws:

IOException - Wenn ein E/A-Fehler auftritt.

mark

public synchronized void mark(final int readlimit)

Markiert die aktuelle Position in diesem Eingabedatenstrom. Durch einen nachfolgenden Aufruf der Reset-Methode wird dieser Stream an der letzten markierten Position neu positioniert, sodass nachfolgende Lesevorgänge dieselben Bytes erneut lesen.

Parameters:

readlimit - Ein int , der den maximalen Grenzwert für Bytes darstellt, die gelesen werden können, bevor die Markierungsposition ungültig wird.

markSupported

public boolean markSupported()

Testet, ob dieser Eingabedatenstrom die Markierungs- und Zurücksetzungsmethoden unterstützt. Ob Markierung und Zurücksetzen unterstützt werden, ist eine invariante Eigenschaft eines bestimmten Eingabestreams instance. Die markSupported-Methode von InputStream gibt false zurück.

Returns:

True, wenn dieser Stream instance die Methoden zum Markieren und Zurücksetzen unterstützt, False andernfalls.

read

public int read()

Liest das nächste Byte von Daten aus dem Eingabedatenstrom. Der Wert byte wird als int im Bereich von 0 bis 255 zurückgegeben. Wenn kein Byte verfügbar ist, weil das Ende des Datenstroms erreicht wurde, wird der Wert -1 zurückgegeben. Diese Methode blockiert, bis Eingabedaten verfügbar sind, das Ende des Datenstroms erkannt oder eine Ausnahme ausgelöst wird.

Returns:

Ein int , das die Gesamtzahl der in den Puffer gelesenen Bytes darstellt, oder -1, wenn keine weiteren Daten vorhanden sind, weil das Ende des Datenstroms erreicht wurde.

Throws:

IOException - Wenn ein E/A-Fehler auftritt.

read

public int read(final byte[] b)

Liest eine gewisse Anzahl von Bytes aus dem Eingabedatenstrom und speichert sie im Pufferarray . Die Anzahl der tatsächlich gelesenen Bytes wird als ganze Zahl zurückgegeben. Diese Methode blockiert, bis Eingabedaten verfügbar sind, das Ende der Datei erkannt oder eine Ausnahme ausgelöst wird. Wenn die Länge von 0 ist, werden keine Bytes gelesen und 0 zurückgegeben. andernfalls wird versucht, mindestens ein Byte zu lesen. Wenn kein Byte verfügbar ist, weil sich der Stream am Ende der Datei befindet, wird der Wert -1 zurückgegeben. andernfalls wird mindestens ein Byte gelesen und in gespeichert.

Das erste Bytelese wird im Element gespeichert, das nächste in usw. Die Anzahl der gelesenen Bytes entspricht höchstens der Länge von . Lassen Sie uns die Anzahl der tatsächlich gelesenen Bytes sein. diese Bytes werden in Elementen über gespeichert, wobei Elemente nicht betroffen bleiben.

Die -Methode für die -Klasse InputStream hat die gleiche Auswirkung wie:

Parameters:

b - Ein byte Array, das den Puffer darstellt, in den die Daten gelesen werden.

Throws:

IOException - Wenn das erste Byte aus einem anderen Grund als dem Ende der Datei nicht gelesen werden kann, wenn der Eingabedatenstrom geschlossen wurde oder wenn ein anderer E/A-Fehler auftritt.
NullPointerException - Wenn das byte Array b NULL ist.

read

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

Liest bis zu Bytes von Daten aus dem Eingabedatenstrom in ein Bytearray ein. Es wird versucht, bis zu Bytes zu lesen, aber möglicherweise wird eine kleinere Zahl gelesen. Die Anzahl der tatsächlich gelesenen Bytes wird als ganze Zahl zurückgegeben. Diese Methode blockiert, bis Eingabedaten verfügbar sind, das Ende der Datei erkannt oder eine Ausnahme ausgelöst wird.

Wenn null ist, werden keine Bytes gelesen und 0 zurückgegeben. andernfalls wird versucht, mindestens ein Byte zu lesen. Wenn kein Byte verfügbar ist, weil sich der Stream am Ende der Datei befindet, wird der Wert -1 zurückgegeben. andernfalls wird mindestens ein Byte gelesen und in gespeichert.

Das erste Bytelese wird im Element gespeichert, das nächste in usw. Die Anzahl der gelesenen Bytes entspricht höchstens . Lassen Sie uns die Anzahl der tatsächlich gelesenen Bytes sein. diese Bytes werden in Elementen über gespeichert, wobei Elemente nicht betroffen bleiben.

In jedem Fall bleiben Elemente durch und Elemente durch unberührt.

Die -Methode für -Klasse InputStream ruft die Methode einfach wiederholt auf. Wenn der erste solche Aufruf zu einem führt, wird diese Ausnahme vom Aufruf der -Methode zurückgegeben. Wenn ein späterer Aufruf von zu einem führt, wird die Ausnahme abgefangen und behandelt, als wäre sie das Ende der Datei; Die bis zu diesem Punkt gelesenen Bytes werden in gespeichert, und die Anzahl der Bytes, die gelesen wurden, bevor die Ausnahme aufgetreten ist, wird zurückgegeben. Die Standardimplementierung dieser Methode blockiert, bis die angeforderte Menge an Eingabedaten gelesen, das Ende der Datei erkannt oder eine Ausnahme ausgelöst wurde. Unterklassen werden empfohlen, eine effizientere Implementierung dieser Methode bereitzustellen.

Parameters:

b - Ein byte Array, das den Puffer darstellt, in den die Daten gelesen werden.
off - Ein int , der den Startoffset in dem byte Array darstellt, in dem die Daten geschrieben werden.
len - Ein int , der die maximale Anzahl von Bytes darstellt, die gelesen werden sollen.

Returns:

Ein int , das die Gesamtzahl der in den Puffer gelesenen Bytes darstellt, oder -1, wenn keine weiteren Daten vorhanden sind, weil das Ende des Datenstroms erreicht wurde.

Throws:

IOException - Wenn das erste Byte aus einem anderen Grund als dem Ende der Datei nicht gelesen werden kann, oder wenn der Eingabedatenstrom geschlossen wurde oder wenn ein anderer E/A-Fehler auftritt.
NullPointerException - Wenn das byte Array b NULL ist.
IndexOutOfBoundsException - Wenn off negativ, len negativ oder len größer als b.length - offist.

reset

public synchronized void reset()

Positioniert diesen Stream an der Position zum Zeitpunkt, an dem die mark-Methode zuletzt für diesen Eingabedatenstrom aufgerufen wurde. Beachten Sie, dass durch die Neupositionierung des Dateilesestreams die Datei MD5-Überprüfung deaktiviert wird.

Throws:

IOException - Wenn dieser Stream nicht markiert wurde oder wenn die Markierung ungültig wurde.

skip

public synchronized long skip(final long n)

Überspringt und verwirft n Bytes Daten aus diesem Eingabedatenstrom. Die Skip-Methode kann aus einer Vielzahl von Gründen am Ende eine kleinere Anzahl von Bytes überspringen, möglicherweise 0. Dies kann sich aus einer Reihe von Bedingungen ergeben; Das Erreichen des Dateiendes, bevor n Bytes übersprungen wurden, ist nur eine Möglichkeit. Die tatsächliche Anzahl übersprungener Bytes wird zurückgegeben. Wenn n negativ ist, werden keine Bytes übersprungen.

Beachten Sie, dass durch die Neupositionierung des Dateilesestreams die Datei MD5-Überprüfung deaktiviert wird.

Parameters:

n - Ein long , der die Anzahl der zu überspringenden Bytes darstellt.

Gilt für: