目录
fs.exists() 判断文件或目录是否存在,返回bool值
fs 读取操作文件
引入与注意事项
引入
const fs = require("fs");
注意事项
1 添加后缀 sync 就是同步操作 例(fs.writeFileSync),否则就是异步 例如(fs.writeFile)
2 回调函数的第一个参数,必须是错误对象error 如果有错误发生,错误将通过第一个参数error返回
3 第二个参数作为成功响应的数据,如果没有异常,error会被设为null
增
fs.writeFile() 覆盖
创建文件,如果文件存在就写入数据覆盖原有数据, 如果不存在就创建并写入, 如果文件所在目录不存在,会报错, 只能创建文件,不能创建文件夹
fs.writeFile(
"../新建文件夹/新建文本文档.txt",
"新增的数据",
function (err,data) {
console.log(err,data);
}
);
fs.appendFile() 追加
创建文件,如果文件存在就在原有数据后追加信息, 如果不存在就创建并写入
fs.appendFile(
"../新建文件夹/新建文本文档.txt",
"新增的数据",
function (err,data) {
console.log(err,data);
}
);
fs.mkdir() 文件夹
创建文件夹, 如果目录不存在就创建,如果存在就报错
fs.mkdir(
"../新建文件夹",
function (err,data) {
console.log(err,data);
}
);
删
fs.unlink() 删除文件
fs.unlink(
"../新建文件夹/新建文本文档.txt",
function (err,data) {
console.log(err,data);
}
);
fs.rmdir() 删除文件夹
必须是空目录才能删除, 否则会报错
fs.rmdir(
"../新建文件夹",
function (err,data) {
console.log(err,data);
}
);
改
fs.rename()
可以修改文件的 位置,文件名,后缀, 注意不能跨盘
fs.rename(
"../新建文件夹/新建文本文档.txt",
"../新建文件夹/新建.qax",
function (err,data) {
console.log(err,data);
}
);
查
fs.exists() 判断文件或目录是否存在,返回bool值
fs.exists(
"../新建文件夹/新建文本文档.txt",
function (err,data) {
console.log(err,data);
}
);
fs.readdir() 读取目录下的所有文件和子目录
withFileTypes可判断类型(文件1目录2) 回调的第一个参数是错误信息,第二个参数是包含了子文件名的数组
fs.readdir(
"../新建文件夹",
{withFileTypes:true},
function (err,data) {
console.log(err,data);
}
);
fs.readFile() 读取文件
第二个参数设置编码方式,否则默认二进制流buffer
fs.readFile(
"../新建文件夹/新建文本文档.txt",
"utf8",
function (err,data) {
console.log(err,data);
}
);
compressing 压缩、解压文件
安装与引用
安装
npm install compressing
引入
const compressing = require("compressing");
支持格式: tar、gzip、tgz、zip
使用
压缩单个文件
compressing.zip.compressFile('uploads/test.txt', 'uploads/test.zip').then(() => {}).catch(() => {});
压缩文件夹
compressing.zip.compressDir('./uploads/test', 'test3.zip').then(()=>{}).catch(()=>{});
解压文件
compressing.zip.uncompress('./uploads/test3.zip', './uploads/test3').then(() => {}).catch(() => {});
解压含有中文名的文件
compressing.zip.uncompress("../新建文件夹.zip", "../新建文件夹", {zipFileNameEncoding: "GBK",}).then(() => {}).catch(() => {});
打开文件夹与打开文件
打开文件夹
this.$electron.remote.shell.showItemInFolder('绝对路径');
打开文件
需引入 nodeJS 的 path 模块
import path from "path";
打开文件
this.$electron.remote.shell.openExternal(path.resolve("绝对路径"));