通常呢,前端人员对于文件或者文件夹的操作相对而言是比较少的,现在呢有以下情景:假设某位大哥选择了一个excel文件并且传输到了后端,后端需要将这个文件解析并且存到指定的位置,然后解析成符合前端需要的数据写入到数据库中方便前端大哥调接口进行增删改查。我们现在呢cosplay的是一个后端同学,那么这些事自然而然就需要我们处理啦,这次记录的是内置模块fs,fs模块主要是用于文件和文件夹的操作,它内置了很多关于文件操作的方法来帮我们完成以上场景中的文件夹的存放解析以及读取。
文件夹基本操作:创建,重命名,删除
const fs = require('fs')
//在当前目录下创建一个avtar的目录
//fs.mkdir方法:在指定目录下创建一个新的目录
fs.mkdir("./avtar", (err) => {
//err是指错误参数
if (err && err.code === 'EEXIST') {
console.log("目录已存在")
}
})
//fs.rename方法:重命名当前文件夹
fs.rename("./avtar", "./person", (err) => {
console.log(err)//err只指错误参数
// [Error: ENOENT: no such file or directory, rename 'D:\CJ\nodeTest\node\fs文件操作模块\avtar' -> 'D:\CJ\nodeTest\node\fs文件操作模块\person'] {
// errno: -4058,
// code: 'ENOENT',
// syscall: 'rename',
// path: 'D:\\CJ\\nodeTest\\node\\fs文件操作模块\\avtar',
// dest: 'D:\\CJ\\nodeTest\\node\\fs文件操作模块\\person'
// }
if (err.code === 'ENOENT') {
console.log('当前文件不存在')
}
})
//删除当前文件夹
// 删除不为空的文件时,会报错 解决方法:unlink所有的文件,然后在执行rmdir
fs.rmdir("./person", (err) => {
console.log(err)//err只指错误参数
if (err && err.code === 'ENOENT') {
console