哥伦布

node.js-fs文件夹与文件操作

复制代码
/*
 * @Description: fs文件夹操作
 * @Version: 1.0
 * @Autor: Nanke_南柯
 * @Date: 2021-11-02 20:46:05
 * @LastEditors: Nanke_南柯
 * @LastEditTime: 2021-11-02 20:54:56
 */

const fs =require('fs')
//新增文件夹
// fs.mkdir('logs',(err)=>{
//     if(err) throw err
//     console.log("文件创建成功");
// })

//修改文件夹名称
// fs.rename('./logs','./log',()=>{
//     console.log("修改文件名称成功");
// })

//删除文件夹
// fs.rmdir('./log',()=>{
//     console.log("删除文件夹成功");
// })

//读取文件夹
fs.readdir('./logs',(err,result)=>{
    console.log(result);
})
复制代码

如图

 文件操作

复制代码
//写入文件
// fs.writeFile('./logs/log1.log','hello\nworld',(err)=>{
//     console.log('写入文件成功');
// })

// 修改文件
// fs.appendFile('./logs/log1.log','!!!',(err)=>{
//     console.log('修改文件成功');
// })

//删除文件
// fs.unlink('./logs/log1.log',(err)=>{
//     console.log("删除文件成功");
// })

//读取文件内容
// fs.readFile('./logs/log1.log',(err,content)=>{
//     console.log(content.toString());
// })

//读取文件内容2
// fs.readFile('./logs/log1.log','utf-8',(err,content)=>{
//     console.log(content);
// })
// console.log("我还是先执行的,因为读取文件属于异步");

// 同步读取文件内容
// const content = fs.readFileSync('./logs/log1.log')
// console.log(content.toString());
// console.log("上面是同步操作了,我必须等待它读取完毕");

//异步读取文件内容
// const fspromises =require("fs").promises //必须node版本10以上

// (async()=>{
//     let result = await fspromises.readFile('./logs/log1.log')
//     console.log(result);
// })()
复制代码

 

复制代码
// 批量写文件
// for (var i = 0; i < 10; i++) {
//     fs.writeFile(`./logs/log-${i}.txt`, `log-${i}`, (err) => {
//         console.log('批量写文件.')
//     })
// }

// 读取文件/目录信息
// fs.readdir('./', (err, data) => {
//     data.forEach((value, index) => {
//         fs.stat(`./${value}`, (err, stats) => {
//             // console.log(value + ':' + stats.size)
//             console.log(value + ' is ' + (stats.isDirectory() ? 'directory' : 'file'))
//         })
//     })
// })

// watch 监测文件变化
fs.watch('./logs/log-0.txt', () => {
    console.log("log-0.txt 文件发生了变化")
})
复制代码

 

posted @   南柯Dream丶  阅读(255)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示