异步读取:fs.readFile
    文件路径是以项目根路径为参考;如果路径下文件不存在,则报错

    1. fs.readFile('./server/login.js', (err, data) => {
    2. if (err) {
    3. return console.error(err);
    4. }
    5. console.log("异步读取: " + data.toString());
    6. });

    打开文件:fs.open

    1. // Flag 描述
    2. // r 以读取模式打开文件。如果文件不存在抛出异常。
    3. // r+ 以读写模式打开文件。如果文件不存在抛出异常。
    4. // rs 以同步的方式读取文件。
    5. // rs+ 以同步的方式读取和写入文件。
    6. // w 以写入模式打开文件,如果文件不存在则创建。
    7. fs.open('./server/login.js', 'r+', (err, fd) => {
    8. if (err) {
    9. return console.error(err);
    10. }
    11. console.log(fd); //返回的第二个参数为一个整数,表示打开文件返回的文件描述符,window中又称文件句柄
    12. });

    创建文件(如果文件存在则修改原文件的内容)并写入自己的数据

    1. let writeStream = fs.createWriteStream("test/output.png");
    2. let data = req.body.file
    3. writeStream.write(data,'utf8'); //写入数据,会覆盖原有数据
    4. writeStream.end(); //标记写入完成
    5. writeStream.on('finish',() => { //标记写入完成后,会广播一个finish事件
    6. console.log("写入完成");
    7. })
    8. writeStream.on('error',() => { //标记写入失败后,会广播一个error事件
    9. console.log("写入失败");
    10. })