node.js之基础的文件操作

node.js之所以这么火,其中最大的原因可能就是由于他的异步操作,处理高并发的效率高于其他。
所以也有很多网站,中间采用node.js进行渲染,能高效的处理大流量高并发的问题。
最近,公司的项目要用node.js进行书写,可能有的童鞋纳闷了,node不是服务器端的吗,算是后端的东西了,但是公司并没有把node作为后端语言,而是作为中间处理,通过模板引擎渲染页面的,这可能才是真正的node.js的用处吧,所以啊笔者又开始了 node.js的爬坑之路。
node虐我千百遍,我待node如初恋。
今天来说一下node.js的文件操作吧,毕竟这个东西也是基础的,想要后端玩得好,文件操作这块也得六。

// 下面的都是 异步书写的, 其实工作中吧 用node很大部分原因就是因为他的异步
当然你也可以同步
同步就是在异步的方法 后面加上 Async 例如 读取文件:var data=fs.readFileAsync(’./hello.txt’);
里面不用再加上 回调函数了。
这里有个东西要记牢 异步 很大程度是依靠回调函数 但并不是回调函数就是异步。这个要记牢

const fs=require('fs');

// 1. fs.stat 检查 是文件还是目录

// fs.stat('./index.html',(err,data)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log(`是文件:${data.isFile()}`);
    console.log(`是目录:${data.isDirectory()}`)

})

// 2.fs.mkdir() 创建目录

fs.mkdir('./css',(err)=>{
    if(err){
        console.log(err);
        return;
    }

    console.log('创建成功!');
})

//  3. fs.writeFile  创建写入文件 如果文件存在覆盖里面的内容  没有就 重新创建
fs.writeFile('./hello.txt',"hello node.js",(err)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log("创建写入成功!")
})

// 4. fs.appendFile 追加文件 内容
fs.appendFile('./hello.txt',"我要好好学习node.js",(err)=>{
    if(err){
        console.log(err);
        return;
    }

    console.log('success append!');
})

// 5.fs.readFile 读取文件操作

fs.readFile('./hello.txt',(err,data)=>{
    if(err){
        console.log(err);
        return;
    }
    // 读取的数据是 buffer 十六进制 要转换成字符串
    console.log(data.toString());
})

// 6.fs.readdir 读取目录下的信息
fs.readdir('./',(err,data)=>{
    if(err){
        console.log(err);
    }
    console.log(data)
})

// 7.fs.rename 1.文件重命名 2.文件移动操作
fs.rename('./css/aaa.css','./css/index.css',(err)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log('重命名成功//移动文件成功!');
})

// 8.fs.rmdir 删除目录  必须是空目录才可以删除
fs.rmdir('./lib',(err)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log('删除目录成功!');
})

// 9.fs.unlink() 删除文件操作
fs.unlink("./app.txt",(err)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log('删除成功!');
})
原创文章 288 获赞 101 访问量 4万+

猜你喜欢

转载自blog.csdn.net/yunchong_zhao/article/details/105621468