文件操作fs(02):读写

文件fs

    const fs = require('fs');

读取 readFile

/*
    读取文件操作
    readFile
    readFileSync
 */
const fs = require('fs');
const path = require('path');

let strpath = path.join(__dirname,'data.json');
fs.readFile(strpath,(err,data) =>{
    if(err){
        console.log(err);
        return;
    }else{
        console.log('readFile no options',data);
    }
});

/*
    如果有第二个参数并且是编码,那么回调函数获取到的数据就是字符串
    如果没有,那么得到的就是Buffer实例对象
 */

//异步操作
fs.readFile(strpath,'utf8',(err,data) =>{
    if(err){
        console.log(err);
        return;
    } else{
        console.log('readFile',data); //不需要toString
    }
});


//同步操作
let ret = fs.readFileSync(strpath);
console.log('readFileSync no options',ret);

let ret2 = fs.readFileSync(strpath,'utf8');
console.log('readFileSync',ret2);

写文件

/*
    写文件操作
    writeFile 覆盖操作。
    writeFileSync
 */
const fs = require('fs');
const path = require('path');

let strpath = path.join(__dirname,'data.txt');

//异步操作
// fs.writeFile(strpath,'hello',(err)=>{
//    if(err){
//        console.log(err);
//        return;
//    }else{
//        console.log('文件写入成功');
//    }
// });

// fs.writeFile(strpath,'nihao','utf8',(err)=>{
//     if(err) throw err;
//
//     console.log("文件写入成功");
// });

// let buf = Buffer.from('welcome');
// fs.writeFile(strpath,buf,(err)=>{
//    if(err) throw err;
//
//     console.log('写文件成功');
// });

//同步
fs.writeFileSync(strpath,'Tom and Jerry');
posted @ 2020-09-28 16:52  mrtransition  阅读(188)  评论(0)    收藏  举报