>  기사  >  웹 프론트엔드  >  node.js 기반의 fs 코어 모듈을 기반으로 파일을 읽고 쓰는 예제에 대한 자세한 설명

node.js 기반의 fs 코어 모듈을 기반으로 파일을 읽고 쓰는 예제에 대한 자세한 설명

巴扎黑
巴扎黑원래의
2017-09-11 09:47:361541검색

아래 편집기에서는 node.js 기반의 fs 코어 모듈을 사용하여 파일을 읽고 쓰는 방법에 대한 기사를 제공합니다(예제 설명). 편집자님도 꽤 괜찮다고 하셔서 이제라도 전해드리고 참고용으로 드리고 싶습니다. 편집기를 따라가서 node.js에서 fs 모듈의 공통 기능을 살펴보겠습니다. 비동기가 있는 경우 동기화

- fs.readFile은 실행 중인 메모리보다 큰 파일을 읽을 수 없습니다. 파일이 너무 크면 readFile 메서드가 사용되지 않습니다. - 파일 대규모 분할 읽기, 스트림
- fs 모듈 소개

- let fs =require('fs')

동기적으로 파일 읽기

-fs.readFileSync

('path',utf8);

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

파일을 비동기적으로 읽고 err 매개변수

- fs.readFile('path','utf8',function(){})을 사용하여 오류를 캡처합니다. fs.readFile('./name .txt','utf8',function(err,data){if(err){

console.log(err)

}else{console.log(data) }

})

동기 쓰기 입력 파일

- fs.writeFileSync
("경로", 작성된 데이터)

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


파일을 비동기식으로 쓰기

- fs.writeFile

('경로', 작성된 데이터, 콜백)fs.writeFile('./1.txt','aaaaa' , 함수(err) {

if(err){

console.log(err);

}

})파일 읽기 및 쓰기, 복사본 인스턴스 쓰기

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



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('拷贝成功')
})


판단 파일이 존재합니까?

-

fs.existsSync
('파일 경로')

stat method

fs.stat('파일 경로', function (err, stat) {

stat.isDirectory 폴더인지 확인stat.isFile을 참조하여 파일인지 확인})

폴더 삭제- fs.rmdir('폴더 경로', function(){ })

파일 삭제

- fs.unlink('file path',function(){})

//파일 존재 여부 확인

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(){});
}
})
}

재귀를 사용하여 폴더를 작성하고 시퀀스

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');

위 내용은 node.js 기반의 fs 코어 모듈을 기반으로 파일을 읽고 쓰는 예제에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.