Maison > interface Web > js tutoriel > Comment implémenter les opérations de répertoire du système de fichiers fs et les opérations d'informations sur les fichiers dans node.js ?

Comment implémenter les opérations de répertoire du système de fichiers fs et les opérations d'informations sur les fichiers dans node.js ?

亚连
Libérer: 2018-06-05 09:21:09
original
1755 Les gens l'ont consulté

Cet article vous donne une analyse détaillée du fonctionnement du répertoire du système de fichiers fs et des méthodes de fonctionnement des informations sur les fichiers dans node.js, ainsi qu'une explication détaillée du code. Les lecteurs dans le besoin peuvent s'y référer.

Opération sur le répertoire

  • Si le répertoire existe, la création échoue

  • Créez le répertoire de manière synchrone fs.mkdirSync(path, [ mode])

const fs = require('fs');
let mkdir = './mkdir';
fs.mkdir(mkdir, (err) => {
  if (err) {
    console.log(`mkdir ${mkdir} file failed~`);
  } else {
    console.log(`mkdir ${mkdir} file success~`);
  }
});
Copier après la connexion

Lire le répertoire

  • S'il y a des sous-répertoires ou des sous-fichiers dans le répertoire en cours de lecture, ils seront Le fichier le nom du répertoire ou du sous-fichier est utilisé comme élément de tableau des fichiers

  • Lire de manière synchrone le répertoire fs.readdirSync()

const fs = require('fs');
let mkdir = './mkdir';
fs.mkdir(mkdir, (err) => {
  if (err) {
    console.log(`mkdir ${mkdir} file failed~`);
    return false;
  }
  console.log(`mkdir ${mkdir} file success~`);
  let fileName = ['ONE', 'TWO', 'THREE'];
  fileName.forEach((elem) => {
    fs.mkdir(`${mkdir}/${elem}`, (err) => {
      if (err) {
        console.log(`${mkdir}/${elem} failed~`);
        return false;
      }
    });
    fs.readdir(mkdir, (err, files) => {
      if (err) {
        console.log(`readdir ${mkdir} file failed~`);
        return false;
      }
      console.log(`readdir ${mkdir} file success~`);
      console.log(`${files}`);
    });
  });
});
Copier après la connexion

Afficher et modifier les informations d'un fichier ou d'un répertoire

  • Dans le module fs, vous pouvez utiliser la méthode stat ou la méthode lstat pour afficher un fichier ou un répertoire. La seule différence est que lors de l'affichage des informations sur les fichiers de liens symboliques, vous devez utiliser la méthode lstat.

  • fs.stat(chemin, rappel(erreur, statistiques))

  • fs.lstat(chemin, rappel(erreur, statistiques))

Afficher les informations sur le fichier

Méthode de synchronisation pour afficher les informations sur le fichier fs.statSync(path);

const fs = require('fs');
let mkdir = './mkdir';

fs.stat(mkdir, (err, stats) => {
  if (err) {
    console.log(`fs.stats ${mkdir} file failed~`);
  } else {
    console.log(`fs.stats ${mkdir} file success~`);
    console.log(stats);
  }
});
Copier après la connexion

Explication détaillée des statistiques

Stats {
 dev: 2050,文件或目录所在的设备ID,仅在UNIX有效
 mode: 16877,使用数值形式代表的文件或目录的权限标志
 nlink: 3,文件或目录的硬连接数量
 uid: 0,文件或目录的所有者的用户ID,仅在UNIX有效
 gid: 0,文件或目录的所有者的用户组ID,仅在UNIX有效
 rdev: 0,为字符设备文件或块设备文件所在设备ID,仅在UNIX有效
 blksize: 4096,
 ino: 4197533,文件或目录的索引编号,仅在UNIX有效
 size: 4096,文件尺寸,即文件中的字节数
 blocks: 8,
 atimeMs: 1511846425357.986,
 mtimeMs: 1511846425256.986,
 ctimeMs: 1511846425256.986,
 birthtimeMs: 1511846425256.986,
 atime: 2017-11-28T05:20:25.358Z,文件的访问时间
 mtime: 2017-11-28T05:20:25.257Z,文件的修改时间
 ctime: 2017-11-28T05:20:25.257Z,文件的创建时间
 birthtime: 2017-11-28T05:20:25.257Z 
}
Copier après la connexion

La méthode fstat interroge les informations du fichier

Utilisez la méthode open ou la méthode openSync pour ouvrez le fichier et renvoyez le caractère de description du fichier, vous pouvez utiliser la méthode fstat dans le module fs pour interroger les informations du fichier ouvert

const fs = require('fs');
let mkdir = './mkdir';

fs.open(mkdir, 'r', (err, fd) => {
  if (err) {
    console.log(`open ${mkdir} file failed~`);
    return false;
  }
  fs.fstat(fd, (err, stats) => {
    if (err) {
      console.log(`fstat ${mkdir} file failed~`);
      return false;
    }
    console.log(JSON.stringify(stats));
  })
})
Copier après la connexion

fs.fstat

{
  "dev": 1041887651,
  "mode": 16822,
  "nlink": 1,
  "uid": 0,
  "gid": 0,
  "rdev": 0,
  "ino": 4222124650663107,
  "size": 0,
  "atimeMs": 1519394418412.3062,
  "mtimeMs": 1519394418412.3062,
  "ctimeMs": 1519394418412.3062,
  "birthtimeMs": 1519394418402.2554,
  "atime": "2018-02-23T14:00:18.412Z",
  "mtime": "2018-02-23T14:00:18.412Z",
  "ctime": "2018-02-23T14:00:18.412Z",
  "birthtime": "2018-02-23T14:00:18.402Z"
}
Copier après la connexion

Vérifier si le fichier ou le répertoire existe

Le paramètre est une valeur de type booléen

const fs = require('fs');
let mkdir = './mkdir';
fs.exists(mkdir, (exits) => {
  if (exits) {
    console.log(`${exits}, ${mkdir} file exists`);
  } else {
    console.log(`${exits}, ${mkdir} file not exists`)
  }
});
Copier après la connexion

Modifier l'heure d'accès au fichier et l'heure de modification

  • fs.utimes(path, atime, mtime, callback(err))

  • Synchroniser l'heure d'accès au fichier et l'heure de modification fs .utimesSync(path, atime, mtime)

// 修改文件访问时间及修改时间都为当前时间
const fs = require('fs');
let mkdir = './mkdir';
fs.utimes(mkdir, new Date(), new Date(), (err) => {
  if (err) {
    console.log(`fs.utimes ${mkdir} file failed~`);
  } else {
    console.log(`fs.utimes ${mkdir} file success~`);
  }
})
Copier après la connexion

Modifier les autorisations d'un fichier ou d'un répertoire

  • Modifier de manière synchronisée les autorisations d'un fichier ou d'un répertoire fs.chmodSync( path, mode);

  • fs.chmod(path, mode, callback(err))

  • le mode représente la taille de l'autorisation

  • L'autorisation avant le déclenchement de la méthode fs.chmod est drwxr-xr-x.

  • L'autorisation après le déclenchement de la méthode fs.chmod est drw-- -----.

const fs = require('fs');
let mkdir = './mkdir';
fs.chmod(mkdirOne, '0600', (err) => {
  if (err) {
    console.log(`fs.chmod ${mkdir} file failed`);
    return false;
  }
  console.log(`fs.chmod ${mkdir} file success~`);
});
Copier après la connexion

Après avoir utilisé la méthode open ou la méthode openSync pour ouvrez le fichier et renvoyez le descripteur de fichier, vous pouvez utiliser la méthode fchmod dans le module fs pour modifier la lecture et l'écriture du fichier Autorisations

const fs = require('fs');
let mkdir = './mkdir';
fs.open(mkdir, 'r', (err, fd) => {
  if (err) {
    console.log(`open file ${mkdir} failed~`);
    return false;
  }
  fs.fchmod(fd, '0600', (err) => {
    if (err) {
      console.log(`fs.fchmod ${mkdir} file failed~`);
      return false;
    }
    console.log(`fs.fchmod ${mkdir} file success~`);
  })
});
Copier après la connexion

Ce qui précède est ce que j'ai compilé pour tout le monde, je l'espère. sera utile à tout le monde à l’avenir.

Articles associés :

Comment créer une instruction pour télécharger des photos dans AngularJS (tutoriel détaillé)

Comment participer javaScript Comment modifier le style par défaut de l'élément Li ajouté dynamiquement

dans elementui ?

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: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
Derniers numéros
c++ appelle javascript
Depuis 1970-01-01 08:00:00
0
0
0
Qu’est-ce que le garbage collection JavaScript ?
Depuis 1970-01-01 08:00:00
0
0
0
Que sont les fonctions de hook JavaScript ?
Depuis 1970-01-01 08:00:00
0
0
0
Comment obtenir la date actuelle en JavaScript ?
Depuis 1970-01-01 08:00:00
0
0
0
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal