Maison > interface Web > js tutoriel > Parlez de l'écriture de fichiers dans Node.js

Parlez de l'écriture de fichiers dans Node.js

青灯夜游
Libérer: 2020-12-04 17:57:53
avant
8128 Les gens l'ont consulté

Cet article vous présentera l'écriture de fichiers dans Node.js. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Parlez de l'écriture de fichiers dans Node.js

Recommandations associées : "tutoriel node js"

Il est très simple de lire le fichier puis de regarder lors de l'écriture du fichier, les opérations des deux correspondent presque un à un

fs.writeFile

fs.writeFile(file, data[, options], callback)

  • fichier : nom de fichier ou descripteur de fichier

  • données : les plus couramment utilisés sont la chaîne et le tampon

  • callback(err)

Lorsque file est un nom de fichier, écrivez les données dans le fichier de manière asynchrone. Si le fichier existe déjà, écrase le contenu du fichier

const fs = require('fs');

const data = Buffer.from('Hello, Node.js');
fs.writeFile('./test.txt', data, err => {
  if (err) throw err;
  console.log('文件已被保存');
});
Copier après la connexion

fs.write

fs.write a deux surcharges

  • fs.write(fd, buffer[, offset[, length[, position]]], callback) : La signification du paramètre est presque identique à fs.read

  • fs.write(fd, string[, position[, encoding]], callback) : seul le contenu complet de la chaîne peut être écrit dans le fichier

La différence entre les deux est que l'utilisation de buffer peut écrire le contenu de

dans le tampon, tandis que l'utilisation de string ne peut écrire que l'intégralité du contenu de la chaîne dans le fichier offset ~ length + offset

const fs = require('fs');

const data1 = Buffer.from('Hello, Node.js');
const data2 = 'Hello, Node.js';

const fd = fs.openSync('./test.txt', 'w');
console.log(fd)

fs.write(fd, data1, err => {
  if (err) throw err;
  console.log('data1 已被写入');
});

fs.write(fd, data2, err => {
  if (err) throw err;
  console.log('data2 已被写入');
});

setTimeout(() => {
  fs.close(fd, console.log);
}, 100);
Copier après la connexion
fs.appendFile

Ajouter des données à la fin du fichier, créer le fichier s'il n'existe pas fs.appendFile(path, data[, options], callback)

const fs = require('fs/promises');

const data1 = Buffer.from('Hello,');
const data2 = Buffer.from(' Node.js');

fs.appendFile('./test.txt', data1)
  .then(() => {
    fs.appendFile('./test.txt', data2);
    console.log('文件内容追加完成');
  });
Copier après la connexion
fs.createWriteStream

est utilisé pour créer un flux de fichiers inscriptible, options et fs.createReadStream sont presque les mêmes que fs.createWriteStream(path[, options]) options (les plus couramment utilisées sont)

    fd : la valeur par défaut est nulle. spécifié, le paramètre path sera ignoré et le descripteur de fichier spécifié sera utilisé (ne déclenchera pas à nouveau l'événement d'ouverture)
  • mode : valeur par défaut 0o666
  • autoClose : valeur par défaut : vrai, lorsque le L'événement « erreur » ou « fin » se produit, le descripteur de fichier sera automatiquement fermé
  • début : la position de départ pour écrire le fichier, aucun remplacement par défaut n'est défini
Écriture du contenu d'un flux lisible à un flux inscriptible est très simple

const fs = require('fs');

fs.createReadStream('./test.txt')
  .pipe(fs.createWriteStream('./copy.txt'));
Copier après la connexion
Introduction aux flux Et d'autres utilisations seront présentées en détail dans les chapitres Buffer et Stream

Pour plus de connaissances liées à la programmation, veuillez visiter :

Enseignement de la programmation ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:cnblogs.com
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