nodeJs针对文件、文件夹的操作

目录

fs 读取操作文件

引入与注意事项

fs.writeFile() 覆盖

fs.appendFile() 追加

fs.mkdir() 文件夹

fs.unlink()  删除文件

fs.rmdir() 删除文件夹

fs.rename() 

fs.exists() 判断文件或目录是否存在,返回bool值

fs.readdir() 读取目录下的所有文件和子目录

fs.readFile() 读取文件

compressing 压缩、解压文件

安装与引用

使用

压缩单个文件

压缩文件夹

解压文件

解压含有中文名的文件

打开文件夹与打开文件


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("绝对路径"));

猜你喜欢

转载自blog.csdn.net/hjdjhh/article/details/125180551