目录

一、介绍

二、异步API

三、excel的处理

 

一、介绍

fs包是node.js内置的一个包,主要用于文件的读写。

使用时需要先引入

const fs = require("fs")

之后就可以调用fs内的函数来进行文件的读写

二、异步API

1.读取文件内容 readFile(文件路径,回调函数(err,data))

fs.readFile('./files/新建文本文档.txt',(err,data) => {
  if(err){
    console.log(err);
  } else {
    console.log(data.toString());//将读取到的内容转化为字符串
  }
})

2.重命名或移动文件 rename(旧路径,新路径,回调函数(err,data))

3.创建文件夹 mkdir(文件夹路径,回调函数(err))

4.判断是文件夹还是文件 stat(文件路径,回调函数(err,data))

fs.stat('./files/test.css',(err,data) => {
  if(err){
    console.log(err);
  } 
  console.log(`是文件 : ${data.isFile()}`);//isFile() 判断一个东西是不是文件
  console.log(`是目录 : ${data.isDirectory()}`);  //isDirectory()  判断一个东西是不是文件夹
})

5.向文件写入内容 writeFile(文件路径,写入内容,回调函数(err,data))

6.删除目录 rmdir(文件路径,回调函数(err))

7.删除文件 unlink(文件路径,回调函数(err))

8.向文件中追加内容 appendFile(文件路径,回调函数(err))

(与5的区别在于,一个是追加,一个是覆盖原内容)

三、excel的处理

仅靠原始的fs很难处理excel,需要安装新的包node-xlsx

npm install node-xlsx

导入

const xlsx = require("node-xlsx")

获取数据

var data = xlsx.parse("./files/新建 XLSX 工作表.xlsx") 

获取的数据结构

  • 整体是一个数组
  • 数组内存对象,每张表是一个对象
  • 对象内装有很多数组,没一行是一个数组
  • 数组元素是对应列的内容

修改或添加

let music = [
  {
    name:"songs",
    data:[
      ["刘德龙1",18],
      ["刘德龙2",1.90],
      ["刘德龙3","white"]
    ]
  }
]

let buffer = xlsx.build(music);
fs.writeFile("./files/刘德龙.xlsx",buffer,(err) => {
  if(err){
    console.log(err);
  } else {
    console.log("请检查");
  }
})

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐