fs模块

fs模块

  1. 引入模块: var fs = require('fs')

  2. 文件操作格式:

    • 同步操作格式

    • 异步操作格式

    • 简单操作格式

    • 流式操作格式

  • 同步操作模式:

     let fs =require('fs')
     let fd = fs.openSync('要打开的文件','a')
       r:只读
       w:覆盖写
       a:追加写入
       
     fs.writeSync(fd,'内容','编码格式')
  • 异步操作模式:

     let fs = require('fs')
     fs.open('./1.txt','a',(err,fd)=>{
         fs.write(fd,'异步写入',(err)=>{
             if(!err){
                 return console.log('写入成功')
             }
             console.log('写入失败')
         })
     })
  • 简单操作格式:


       fs.writeFile(file,data,[options],callback)

       file: 打开的文件
       data:写入内容
       [options] :简单的设置   设置 flag:"a"  设置编码格式   encoding:"utf8"
       格式:{flag:"a",encoding:"utf8"}  

       r: 只读状态
       w: 覆盖写
       a: 追加写
       callback  :(err)  err:返回错误提示信息 
     

  • 流式操作格式(返回)

     let fs = require('fs')
     fs.createtWirteStream(file,[options])
       file:打开一个可写的文件
       options:设置{flags:'a'}
     ​
     //创建一个可写的流
     let ws = fs.createWriteStream('打开一个可写的文件',{flags:'a'})
     ws.write('写入内容')
     ws.write('写入内容')
     ws.write('写入内容')
     ...
     ws.end()//写完之后关闭
     ​
     ​
     /*let fs = require('fs')
     var ws= fs.createWriteStream('./1.txt',{flag:'a'})
     ws.write('1')
     ws.write('2')
     ws.write('3')
     ws.end('4')*/
  • 可读流和可写流

     var fs = require ('fs')
     //创建可读流
     let rs = fs.createReadStream('./1.txt')
     //创建可写流
     let ws = fs.createWriteStream('./1.txt')
     ​
     //要用到流写入文件必须绑定一个事件,通过事件触发流写入
     rs.on('data',(data)=>{
         ws.write(data)
     })
     ​
     rs.on('end',()=>{
         ws.end()
     })
  • 文件读取

     fs.readdir(path,[options],callback)
     path:要读取的文件路径
     [options]:设置:(状态或者编码格式,一般不会设置,默认)
     callback(err,files)
  • 文件状态

     fs.stat(path.callback)
      
     stats.isFile()//是否是一个文件
     stats.isDirectory()//是否是一个目录
  • path

    • 提供了文件路径和目录路径的工具

    • 兼容其他系统读取文件路径格式

    • path.win32:读取的路径都是兼容

       let path = require('path')
       path.basename()//得到文件最后一部分
       __dirname
       win:读取路径 得到值
       path.basename(__dirname+'1.js');
       其他系统:path.win32.basename(__dirname+'1.js')  
    • path属性

    • path.basename(path,[ext])返回path的最后一部分

    • path:文件路径

    • [ext] :获取文件后缀,但是返回的是文件前面部分.html

      从最后一次出现.(句号)字符到path最后一部分的字符串结束,如果第一个字符为没有点,或者开头就是点,则返回空字符串,如.html,返回空

       path.delimiter 返回平台路径定界符 ;  limit: 分页
       path.dirname(path) 
       path.isAbsolute(path):检测path是否为绝对路径,如果是零长度字符串返回false
       path.join()//使用分隔符\作为界定符,将path片段连起来
       path.parse()//解析路径
       path.resolve()//将path解析为绝对路径
  • URL

     var {url} = require('url')
     var  urlString = 'http://www.baidu.com'
     let obj = new URL(urlString)
     console.log(obj)

     

删除文件

 fs.unlink(path,callback)
 fs.unlink()不能用于目录。要删除目录,使用fs,rmdir()

删除目录

 fs.rmdir(path,callback)
 path:文件路径地址 
 callback:(err):返回错误信息 
 只能删除非空目录,不能删除文件

重命名(覆盖)

 fs.rename(oldPath,newPath,callback)
 oldPath:旧文件路径
 newPath:新文件路径
 callback(err):err 返回错误提示信息

创建目录

 fs.mkdir(path[,options],callback)
 recursive:true 递归创建
 path:文件路径地址
 [options]:设置  {recursive:true}递归创建
 callback(err):err 返回错误提示信息

 

Express

 let expres = require('express')
 ​
 let app = express()//实例得到应用程序
 ​
 app.listen(3000)//监听端口
 app.get('/',function(req,res){
   res.send('hello world')
 })
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值