Maison >interface Web >js tutoriel >Partager quelques API du module fs de fichiers communs Nodejs (résumé)
Cet article organise et enregistre quelques API du module NodejsFile fs couramment utilisées dans le travail, afin de ne pas l'oublier la prochaine fois.
En tant qu'ingénieur de développement web, il est inévitable de traiter avec Nodejs. Le module fs est très utile et peut effectuer certaines opérations liées aux fichiers, mais je l'oublie toujours. J'ai l'intention de l'organiser et de l'enregistrer à nouveau aujourd'hui pour éviter de l'oublier la prochaine fois.
Les opérations sur les fichiers du module fs prennent généralement en charge les API synchrones et asynchrones, et asynchrone inclut également des fonctions de rappel et des formulaires de promesse. La synchronisation est généralement suivie des mots sync
. [Apprentissage recommandé : "nodejs tutorielsync
字样。【推荐学习:《nodejs 教程》】
fs.open(path:string,callback:(err,fd)=>void)
用于打开文件,获取文件描述符(file descriptor),基于拿到的文件描述符做文件操作。fs.close(fd:number,callback:(err)=>void)
用于关闭文件
//打开文件 fs.open(path,(err,fd)=>{ //针对拿到的fd 进行操作 //关闭文件 fs.close(fd, (err) => { if (err) throw err; }); })
一般用于对文件做多种操作时使用。如果你仅仅想读取文件的内容建议用fs.readFile
读取文件:fs.readFile(path:string,callback:(err,data)=>void)
fs.readFile(path,(err,data)=>{ //string或者buffer console.log(data) })
读取目录:fs.readdir(path:string,callback:(err,files:Array98c455a79ddfebb79781bff588e7b37e)=>void)
fs.readdir("./dir",(err,fileNames)=>{ console.log(fileNames) })
还有一种方式通过文件描述符来读取:
fs.read(fd,buffer,offset,length,position,callback:(err,bytesLen,buffer)=>void)
//分配一块长度为10的缓存区 const buffer = Buffer.alloc(10); //打开文件 fs.open(path,(err,fd)=>{ //针对拿到的fd 进行操作:将fd对应的文件内容读取到buffer里 //position为文件的起点 //length为读取的长度 //offset为缓存区起读的位置 fs.read(fd,buffer,offset,length,position,(err,bytesLen,buffer)=>{ //buffer为包含读到数据的原始buffer对象 //bytesLen === length;// true }) //关闭文件 fs.close(fd, (err) => { if (err) throw err; }); })
将数据写入文件,数据可以是字符串或buffer:fs.writeFile(path,data,callback:(err)=>void)
fs.writeFile('message.txt', data, (err) => { if (err) throw err; });
还有另一种方式,通过文件描述符fd
来写文件:
fs.open(path,(err,fd)=>{ //针对拿到的fd 进行操作:将buffer内容写如fd对应的文件里 //position为文件的起点 //length为待写的长度 //offset为缓存区起写的位置 fs.write(fd,buffer,offset,length,position,(err,bytesWrittenLen,buffer)=>{ }) //关闭文件 fs.close(fd, (err) => { if (err) throw err; }); })
删除文件:fs.unlink(path, callback:(err)=>void)
删除目录:fs.rmdir(path,callback:(err)=>void)
同时支持删除目录和文件:fs.rm(path,callback:(err)=>void)
"]
fs.open(path:string,callback:(err,fd)=>void)
est utilisé pour ouvrir des fichiers et obtenir Descripteur de fichiers (descripteur de fichier), effectuez des opérations sur les fichiers en fonction du descripteur de fichier obtenu. fs.close(fd:number,callback:(err)=>void)
est utilisé pour fermer le fichierfs.stat(path,(err,stat)=>{ //stat包含了该目录或文件的大小、创建时间、更新时间,是目录还是文件等 //stats.isDirectory() //stats.isFile() })Il est généralement utilisé lors de l'exécution de diverses opérations sur des fichiers. Si vous souhaitez simplement lire le contenu du fichier, il est recommandé d'utiliser
fs.readFile
Lire le fichier (répertoire)fs.readFile(path:string,callback:(err,data)=>void)
//文件 fs.rename('oldFile.txt', 'newFile.txt', (err) => { if (err) throw err; console.log('Rename complete!'); }); //目录 fs.rename('oldFileDir', 'newFileDir', (err) => { if (err) throw err; console.log('Rename complete!'); });Lire le répertoire :
fs.readdir(path:string,callback : (err,files : Array98c455a79ddfebb79781bff588e7b37e)=>void)
Il existe une autre façon de lire le descripteur de fichier :
fs.read(fd,buffer,offset,length, position,callback : (err,bytesLen,buffer)=>void)
rrreeeÉcrire dans un fichier
fs.writeFile(path,data,callback:(err)=>void)
🎜rrreee🎜Il existe un autre moyen, via le descripteur de fichier fd
code>Pour écrire des fichiers :🎜rrreeefs.unlink(path, callback:(err) =>void )
🎜🎜Supprimer des répertoires : fs.rmdir(path,callback:(err)=>void)
🎜🎜Prend en charge la suppression de répertoires et de fichiers en même temps : fs.rm(path , callback:(err)=>void)🎜🎜🎜Afficher les informations d'état du répertoire (fichier)🎜🎜rrreee🎜🎜Renommer🎜🎜🎜Le renommage inclut le renommage des fichiers et des répertoires 🎜rrreee🎜🎜Enfin🎜 🎜🎜Merci d'avoir lu, si vous avez des questions, veuillez laisser un message pour en discuter, merci ! 🎜🎜Pour plus de connaissances sur la programmation, veuillez visiter : 🎜Introduction à 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!