Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung von Beispielen zum Lesen und Schreiben von Dateien basierend auf dem fs-Kernmodul basierend auf node.js

Detaillierte Erläuterung von Beispielen zum Lesen und Schreiben von Dateien basierend auf dem fs-Kernmodul basierend auf node.js

巴扎黑
巴扎黑Original
2017-09-11 09:47:361500Durchsuche

Der folgende Editor bringt Ihnen einen Artikel über das Lesen und Schreiben von Dateioperationen des fs-Kernmoduls basierend auf node.js (Erklärung mit Beispielen). Der Herausgeber findet es ziemlich gut, und ich möchte es Ihnen jetzt als Referenz geben. Folgen wir dem Editor, um einen Blick darauf zu werfen

fs-Modul in node.js

Häufig verwendete Funktionen

Datei implementieren Verzeichnisoperationen lesen und schreiben

- Synchronisation und Asynchronität existieren nebeneinander, Asynchronität erfordert keine Synchronisation

- fs.readFile kann keine Dateien lesen, die größer als der laufende Speicher sind, wenn Die Datei ist zu groß, die readFile-Methode wird nicht verwendet

- große Datei teilen, lesen, streamen

- Einführung des fs-Moduls

- let fs =require('fs')

Dateien synchron lesen

-fs.readFileSync('path' , utf8);

let result=fs.readFileSync('./1.txt','utf8');

Die Datei asynchron lesen und Fehler mit dem err-Parameter erfassen

- fs.readFile('path','utf8',function(){})

fs.readFile('./name.txt','utf8', function( err,data){
if(err){
console.log(err)
}else{
console.log(data)
}
})

Dateien synchron schreiben

- fs.writeFileSync("Pfad", geschriebene Daten)

fs .writeFileSync("./1.txt",JSON.stringify({name:1}))

Datei asynchron schreiben

- fs.writeFile('path', geschriebene Daten, Rückruf)

fs.writeFile('./1.txt','aaaaa',function ( err) {
if(err){
console.log(err);
}
})

Dateien lesen und schreiben und eine Kopieinstanz schreiben


let fs=require("fs");
//同步拷贝
function copySync(source,target){
//同步读取
let result=fs.readFileSync(source,'utf8');
//同步写入
fs.writeFileSync(target,result);
}
copySync("./age.txt",'./1.txt');

//Asynchrone Kopie


function copy(sourse,target,callback){
//异步读取
fs.readFile(sourse,'utf8',function(err,data){
if(err){
return callback(err)
}else{
//异步写入
fs.writeFile(target,data,callback)
}
});
};
copy('./name.txt','./ss.txt',function(err){
if(err) return console.log(err);
console.log('拷贝成功')
})

Bestimmen Sie, ob die Datei vorhanden ist

- fs.existsSync('Dateipfad')

Stat-Methode

fs.stat('Dateipfad', Funktion (err, stat) {

stat.isDirectory, um zu sehen, ob es ein Ordner ist
stat.isFile, um zu sehen, ob es eine Datei ist

})

Ordner löschen

- fs.rmdir('folder path',function(){})

Datei löschen

- fs.unlink('File Path', function(){})

//Bestimmen Sie, ob die Datei vorhanden ist


if(fs.existsSync('./b')){
fs.stat('./b',function (err,stat) {
//stat中的time是用来做服务器缓存
//stat.isDirectory看是不是文件夹 stat.isFile看是不是文件
if(stat.isDirectory()){
//删除文件夹
fs.rmdir('./b',function(){})
}else{
//删除文件
fs.unlink('./b',function(){});
}
})
}

Verwenden Sie Rekursion, um einen Ordner zu schreiben und ihn darin zu erstellen Reihenfolge


function md(url) {
  let paths=url.split('/'); //将a/b/c拆分成数组['a','b','c']
  let index=0;
  function make(path){
    if(index===paths.length+1){ // 如果到终点,停止递归
      return false;
    }
    if(!fs.existsSync(path)){ //不存在
      //创建文件夹
      fs.mkdir(path,function () {
        make(paths.slice(0,++index).join('/'))
      })
    }else{ //存在
      make(paths.slice(0,++index).join('/'))
    }
  }
  make(paths[index++]) //先取出第一个
}
md('a/b/c/d');

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung von Beispielen zum Lesen und Schreiben von Dateien basierend auf dem fs-Kernmodul basierend auf node.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn