Maison > interface Web > js tutoriel > le corps du texte

Instructions d'utilisation de la méthode fs.read dans node.js_node.js

WBOY
Libérer: 2016-05-16 16:26:11
original
1271 Les gens l'ont consulté

Description de la méthode :

Lire les données du fichier en fonction du descripteur de fichier spécifié fd et écrire l'objet tampon pointé par le tampon. Il fournit une interface de niveau inférieur à readFile.

Il n'est généralement pas recommandé d'utiliser cette méthode pour lire des fichiers, car elle vous oblige à gérer manuellement le tampon et le pointeur de fichier, surtout lorsque vous ne connaissez pas la taille du fichier, ce sera une chose très gênante.

Grammaire :

Copier le code Le code est le suivant :

fs.read(fd,buffer,offset,length,position,[callback(err,bytesRead,buffer)])

Puisque cette méthode appartient au module fs, le module fs doit être introduit avant utilisation (var fs= require(“fs”) )

Paramètres de réception :

Descripteur de fichier fs

buffer Le tampon dans lequel les données seront écrites.

offset Le décalage écrit dans le tampon

length (integer) Spécifie la longueur du fichier lu en octets

position (entier) Spécifie la position de départ de la lecture du fichier. Si cet élément est nul, les données seront lues à partir de la position du pointeur de fichier actuel.

callback Le rappel passe trois paramètres, err, bytesRead, buffer

· erreur Exception

· bytesRead : Nombre d'octets lus

·buffer : objet tampon

Exemple :

Copier le code Le code est le suivant :

var fs = require('fs');
fs.open('123.txt' , 'r' , function (err,fd){
si (erreur) {
console.erreur(erreur);
Retournez
}

var buf = nouveau tampon (8);
fs.read(fd, buf, 0, 8, null, function(err,bytesRead, buffer){
si (erreur) {
console.log(err);
Retournez
}
console.log('bytesRead' bytesRead);
console.log(tampon);
})
})

Code source :

Copier le code Le code est le suivant :

fs.read = function(fd, buffer, offset, length, position, callback) {
si (!util.isBuffer(buffer)) {
// interface de chaîne héritée (fd, longueur, position, encodage, rappel)
var cb = arguments[4],
encodage = arguments[3];
assertEncoding(encodage);
position = arguments[2];
longueur = arguments[1];
buffer = nouveau Buffer(longueur);
Décalage = 0 ;
​ callback = function(err, bytesRead) {
Si (!cb) retourne ;
var str = (bytesRead > 0) ? buffer.toString(encoding, 0, bytesRead) : '';
(cb)(err, str, bytesRead);
};
>
function wrapper (err, bytesRead) {
// Conserve une référence au tampon afin qu'elle ne puisse pas être GC trop tôt.
​ rappel && rappel(err, bytesRead || 0, buffer);
>
liaison.read(fd, buffer, offset, length, position, wrapper);
};
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!