nodeJs中的fs模块

// nodejs提供的系统API模块(文件模块、http网络模块),这些API都是封装的独立的模块,可以直接引入使用

 

// nodejs除了官方提供的API模块之外,还有非官方提供的第三方模块,可以先下载在使用

 

// fs模块 file system 文件系统模块,提供文件的操作功能,增删改查

// 导入fs模块后,返回的一个对象,对象中包含了很多函数,这些函数都是用于操作文件

var fs = require("fs")

 

//console.log(fs)

// fs.writeFileSync("") 用于将一段文本写入一个文件,如果目标文件不存在,会先创建文件,让后将内容写入。如果文件存在,直接将内容写入文件,会把文件原来的内容覆盖掉

// fs.writeFileSync("./123.txt", "asdfg")

 

// 1.指定的文件  2.写入的内容  3.写入之后回调的函数(err参数)

// fs.writeFile("./123.txt", "这是不带sync的函数", function(err){

//  // err 如果写入成功,err就是null值

//  // 如果写入失败,err就是失败原因

//  if (err){

//      console.log("执行写入操作失败", err)

//  }else{

//      console.log("执行写入成功!")

//  }

// })

 

// fs函数中,都分为两个版本sync(同步版本)和async(异步版本)

// 同步函数版本,代码是阻塞状态的,直到函数中的代码执行完成之后,才能继续向下执行代码

 

// 异步函数执行时,函数中的代码会在后台执行,不会阻塞当前代码,当前代码会立刻向下执行,在异步函数中都会有一个回调函数,在异步函数执行完成之后调用,通知程序,函数中的任务已经完成了

 

// input  output IO操作

// 为什么文件操作要有异步版本?

// 文件操作函数,耗时是不稳定的,磁盘读取速度,读写内容的大写,都会影响到任务耗时,如果耗时的任务写成同步版本,那会造成线程阻塞,导致程序卡死一段时间。所以像这类的任务,可以写成异步任务,避免线程卡死

 

// 先下载->再转码->再播放  比较适合使用同步任务

 

 // 定时器也是一个异步任务

// setTimeout(function(){

//   console.log("定时器也是一个异步任务!")

// }, 2000)

//  

//  console.log(123)

//  console.log(123)

//  console.log(123)

 

// fs.readFileSync() 同步版,读取文件内容方法

// 参数:文件路径

// var content = fs.readFileSync("./123.txt")

// 函数返回 Buffer类 缓存对象, 使用toString()转换为字符串

// console.log(content.toString())

 

// 异步版本读取文件

// 1.文件路径

// 2.读取完成后,回调的函数  参数1 错误信息  参数2 读取的数据

// fs.readFile("./123.txt", function(err, data){

//  if (err){

//      console.log("读取文件失败!", err)

//  }else{

//      console.log("读取成功:",data.toString())

//  }

// })

 

// fs.appendFileSync() 在指定的文件末尾添加新内容,如果文件不存在,会先创建文件,再添加文件

// \n 表示换行符

// fs.appendFileSync("./123.txt", '\n')

// fs.appendFileSync("./123.txt", "hello")

 

// fs.appendFile("./123.txt", "异步版函数添加的内容", function(err){

//  if (err){

//      console.log("写入内容失败:",err)

//  }else{

//      console.log("写入成功!")

//  }

// })

 

// ----------------------------------------------------------

 

// fs.mkdir() make directory 创建一个文件,参数1就是要创建的文件夹路径,参数2回调函数

// fs.mkdir("./abc", function(err){

//  if (err){

//      console.log("创建文件夹失败!",err)

//  }else{

//      console.log("创建成功!")

//  }

// })

 

// 拷贝复制文件

// fs.copyFile() 复制文件

// 1.要复制的文件路径 2.目标路径

// fs.copyFile("./123.txt", "./abc/123.txt" ,function(err){

//  if (err){

//      console.log("复制失败:",err)

//  }else{

//      console.log("复制成功")

//  }

// })

 

// 

// fs.unlink() 删除文件

fs.unlink("./abc/123.txt", function(err){

    if (err){

        console.log("删除失败:",err)

    }else{

        console.log("删除成功!")

    }

})


 

// 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值