Objet objet intégré

Objet RangeStream

Flux de requête de plage pour lire les objets

L'objet RangeStream est utilisé pour SeekableStreamLes données de l'objet sont interceptées. Méthode de création :

1 2 3 4 5
var stm = new io.RangeStream(stream, '0-10'); stm.end // 11 var stm = new io.RangeStream(stream, 0, 10); stm.end // 10

Héritage

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<class>Stream|fd|read();write();flush();close();copyTo()] [<class>SeekableStream|seek();tell();rewind();size();readAll();truncate();eof();stat()] [<this>RangeStream|new RangeStream()|begin;end] [object] <:- [Stream] [Stream] <:- [SeekableStream] [SeekableStream] <:- [RangeStream] Stream fd read() write() flush() close() copyTo() RangeStream new RangeStream() begin end object toString() toJSON() SeekableStream seek() tell() rewind() size() readAll() truncate() eof() stat()

Constructeur

RangeStream

Constructeur RangeStream

1 2
new RangeStream(SeekableStream stm, String range);

Paramètres d'appel :

  • stm: SeekableStream, L'objet de flux de base binaire de RangeStream doit être SeekableStream
  • range: String, une chaîne décrivant la plage, le format est'begin-[end]','[begin]-end'

Constructeur RangeStream

1 2 3
new RangeStream(SeekableStream stm, Long begin, Long end);

Paramètres d'appel :

  • stm: SeekableStream, L'objet de flux de base binaire de RangeStream doit être SeekableStream
  • begin: Long, la position de départ de la lecture du contenu de stm
  • end: Long, la position de fin de lecture du contenu de stm

Attributs des membres

begin

Valeur de début de plage de requête longue

1
readonly Long RangeStream.begin;

end

Long, interroge la valeur de fin de la plage

1
readonly Long RangeStream.end;

fd

Entier, requête Stream La valeur de descripteur de fichier correspondant, implémentée par la sous-classe

1
readonly Integer RangeStream.fd;

Fonction membre

seek

Déplacer la position de fonctionnement actuelle du fichier

1 2
RangeStream.seek(Long offset, Integer whence = fs.SEEK_SET);

Paramètres d'appel :

  • offset: Long, spécifiez un nouvel emplacement
  • whence: Entier, précisez la référence de position, les valeurs autorisées sont : SEEK_SET, SEEK_CUR, SEEK_END

tell

Interroger la position actuelle du flux

1
Long RangeStream.tell();

Résultat de retour :

  • Long, Renvoie la position actuelle du flux

rewind

Déplacer la position actuelle au début du flux

1
RangeStream.rewind();

size

Taille du flux de requête

1
Long RangeStream.size();

Résultat de retour :

  • Long, Taille du flux de retour

readAll

Lire toutes les données restantes du flux

1
Buffer RangeStream.readAll() async;

Résultat de retour :

  • Buffer, Renvoie les données lues à partir du flux, s'il n'y a pas de données à lire ou si la connexion est interrompue, renvoie null

truncate

Modifier la taille du fichier, si la nouvelle taille est inférieure à la taille d'origine, le fichier est tronqué

1
RangeStream.truncate(Long bytes) async;

Paramètres d'appel :

  • bytes: Long, nouvelle taille de fichier

eof

Vérifiez si le fichier est à la fin

1
Boolean RangeStream.eof();

Résultat de retour :

  • Boolean, Renvoie True pour indiquer la fin

stat

Interroger les informations de base du fichier en cours

1
Stat RangeStream.stat() async;

Résultat de retour :

  • Stat, revenir Stat Informations sur le fichier de description d'objet

read

Lire les données de la taille spécifiée à partir du flux

1
Buffer RangeStream.read(Integer bytes = -1) async;

Paramètres d'appel :

  • bytes: Entier, spécifiez la quantité de données à lire, la valeur par défaut est de lire un bloc de données de taille aléatoire, la taille des données lues dépend de l'appareil

Résultat de retour :

  • Buffer, Renvoie les données lues à partir du flux, s'il n'y a pas de données à lire ou si la connexion est interrompue, renvoie null

write

Écrire les données fournies dans le flux

1
RangeStream.write(Buffer data) async;

Paramètres d'appel :

  • data: Buffer, Étant donné les données à écrire

flush

Écrire le contenu du tampon de fichier sur le périphérique physique

1
RangeStream.flush() async;

close

Fermer l'objet de flux actuel

1
RangeStream.close() async;

copyTo

Copiez les données du flux dans le flux cible

1 2
Long RangeStream.copyTo(Stream stm, Long bytes = -1) async;

Paramètres d'appel :

  • stm: Stream, L'objet de flux cible
  • bytes: Long, le nombre d'octets copiés

Résultat de retour :

  • Long, Renvoie le nombre d'octets copiés

toString

Renvoie la représentation sous forme de chaîne de l'objet, renvoie généralement "[Objet natif]", l'objet peut être ré-implémenté selon ses propres caractéristiques

1
String RangeStream.toString();

Résultat de retour :

  • String, Renvoie la représentation sous forme de chaîne de l'objet

toJSON

Renvoie la représentation au format JSON de l'objet, renvoie généralement une collection d'attributs lisibles définis par l'objet

1
Value RangeStream.toJSON(String key = "");

Paramètres d'appel :

  • key: chaîne, inutilisé

Résultat de retour :

  • Value, Renvoie une valeur contenant JSON sérialisable