您现在的位置是:网站首页> 编程资料编程资料
nodejs如何获取指定路径下所有的文件夹名或类型_node.js_
2023-05-24
363人已围观
简介 nodejs如何获取指定路径下所有的文件夹名或类型_node.js_
获取指定路径下所有的文件夹名或类型
let components = [] const files = fs.readdirSync('./components') files.forEach(function (item, index) { let stat = fs.statSync("./components/" + item) if (stat.isDirectory() === true) { components.push(item) } }) console.log(components); //============================= //检测文件夹下文件是文件夹还是文件 模块 const fs = require('fs'); function textFile(str) { let arr = fs.readdirSync(str); console.log(arr); let obj = {}; arr.forEach((val, idx) => { // console.log(val) let ph = fs.statSync(str + '/' + val); if (ph.isDirectory()) { // console.log(`${val} 是文件夹`); obj[val] = '文件夹'; } else { // console.log(`${val} 是文件`); obj[val] = '文件'; } }) return obj; } const my = require('./my'); console.log(my.textFile('./homework'));nodejs文件操作
node文件操作又称为文件操作模块,是nodejs内置的文件操作模块。主要由两部分组成。第一部分文件操作,可以对文件进行读,写,剪切,删除基本操作,第二部分文件夹操作,可以对文件夹进行读,写,删除,获取文件夹内容基本操作。
注:在使用改模块时里面的所有要使用的路径必须为绝对路径。
首先在文件里引入文件模块
let fs=require('fs');其中前面的fs为变量名用来接收文件模块的对象实例。后面的fs为需要引用的模块名。
文件操作
写入文件(异步)
语法:
let fs = require('fs'); fs.writeFile(`${__dirname}/1.json`,data,err=>{ if(err){ console.log('有错误'); } })可以将文件写入指定路径的文件里
参数详解
`${__dirname}/1.json`:数据要写入的文件所在的绝对地址data:要写入的数据err:当写入文件时发生错误的回调函数
发生错误,输入的文件路径有问题。若路径没有问题则不论文件是否存在都会写入文件中去,若文件不存在则会创建一个文件并把数据写入文件里。
写入文件(同步)
语法:
let fs = require('fs'); fs.writeFileSync(`__dirname/1.json`,data);`${__dirname}/1.json`:数据要写入的文件所在的绝对地址data:要写入的数据
发生错误,输入的文件路径有问题。若路径没有问题则不论文件是否存在都会写入文件中去,若文件不存在则会创建一个文件并把数据写入文件里。当发生错误时会报错并终止程序运行。
若想使用同步且文件写入发生错误程序不会停止运行时需要使用try {}catch{}方法
语法
let fs = require('fs'); try { fs.writeFileSync(`__dirname/1.json`, data); } catch (e) { console.log(e); }e:发生的错误参数,但不会影响程序正常运行。
读取文件(异步)
语法
let fs = require('fs'); fs.readFile(`${__dirname}/1.json`, (err, data) => { if (e) { console.log('有错误'); } console.log(data); })可以读取路径所在的文件数据
参数详解
`${__dirname}/1.json`:数据要读取的文件所在的绝对地址err:当读取文件时发生错误的回调函数data:读取出来的数据(buffer类型)
发生错误,输入的文件路径有问题。所输入的路径中不存在该文件。
读取文件(同步)
语法
let fs = require('fs'); let data = fs.readFileSync(`${__dirname}/1.json`);`${__dirname}/1.json`:数据要读取的文件所在的绝对地址data:读取出的数据(buffer类型)
发生错误,输入的文件路径有问题。当发生错误时会报错并终止程序运行。
若想使用同步且文件读取发生错误程序不会停止运行时需要使用try {}catch{}方法
语法
let fs = require('fs'); try { let data = fs.readFileSync(`${__dirname}/1.json`); } catch (e) { }e:发生的错误参数,但不会影响程序正常运行。
文件修改/文件剪切(异步)
语法
let fs = require('fs'); fs.rename(`${__dirname}/1.json`,`${__dirname}/2.json`, err => { if (err) { console.log('有错误'); } })可以将文件从一个地址转移到另一个地址
参数详解
`${__dirname}/1.json`:文件所在的原始绝对地址`${__dirname}/2.json`:文件要移动到的新地址err:当修改文件时发生错误的回调函数
发生错误,输入的文件路径有问题。所输入的路径中不存在该文件。
修改文件 /文件剪切(同步)
语法
let fs = require('fs'); fs.renamesync(`${__dirname}/1.json`,`${__dirname}/2.json`);`${__dirname}/1.json`:文件所在的原始绝对地址`${__dirname}/2.json`:文件要移动到的新地址
发生错误,输入的文件路径有问题。当发生错误时会报错并终止程序运行。
若想使用同步且文件修改发生错误程序不会停止运行时需要使用try {}catch{}方法
语法
let fs = require('fs'); try { fs.renamesync(`${__dirname}/1.json`, `${__dirname}/2.json`); } catch (e) { }e:发生的错误参数,但不会影响程序正常运行。
删除文件(异步)
语法:
let fs = require('fs'); fs.unlink(`${__dirname}/1.json`,err=>{ if(err){ console.log('有错误'); } })可以删除指定路径的文件
参数详解
`${__dirname}/1.json`:要删除的文件所在的绝对地址err:当删除文件时发生错误的回调函数
发生错误,输入的文件路径有问题。找不到所删除的文件。
注:一次只能删除一个文件
删除文件(同步)
语法:
let fs = require('fs'); fs.unlinksync(`__dirname/1.json`);`${__dirname}/1.json`:要删除的文件所在的绝对地址
发生错误,输入的文件路径有问题。当发生错误时会报错并终止程序运行。
若想使用同步且删除写入发生错误程序不会停止运行时需要使用try {}catch{}方法
语法
let fs = require('fs'); try { fs.unlinksync(`__dirname/1.json`); } catch (e) { console.log(e); }e:发生的错误参数,但不会影响程序正常运行。
文件夹操作
创建文件夹(异步)
语法
let fs = require('fs'); fs.mkdir(`${__dirname}`,err=>{ })一次只能创建一个空的文件夹,不能创建文件
`${__dirname}`:要创建文件夹的路径err:创建文件夹发生错误的回调函数
创建文件夹(同步)
语法
let fs = require('fs'); fs.mkdirSync(`${__dirname}`);`${__dirname}`:要创建文件夹的路径
发生错误,输入的文件路径有问题。当发生错误时会报错并终止程序运行
若想使用同步且创建文件夹发生错误程序不会停止运行时需要使用try {}catch{}方法
语法
let fs = require('fs'); const { dirname } = require('path'); try{fs.mkdirSync(`${__dirname}`)} catch(e){ if(e){ console.log('发生错误'); } }e:发生的错误参数,但不会影响程序正常运行。
读取文件夹(异步)
语法
let fs = require('fs'); fs.readdie(`${__dirname}`,(err,file)=>{ if(err){console.log('有错误')} })一次只能读取一个文件夹,不能读取文件
`${__dirname}`:要读取文件夹的路径err:读取文件夹发生错误的回调函数file:返回一个以所有文件夹名组成的数组
读取文件夹(同步)
语法
let fs = require('fs'); let arr=fs.raeddirsync(`${__dirname}`);`${__dirname}`:要创建文件夹的路径arr:返回一个以所有文件夹名组成的数组
发生错误,输入的文件路径有问题。当发生错误时会报错并终止程序运行
若想使用同步且读取文件夹发生错误程序不会停止运行时需要使用try {}catch{}方法
语法
let fs = require('fs'); const { dirname } = require('path'); try{let arr=fs.readdirsync(`${__dirname}`)} catch(e){ if(e){ console.log('发生错误'); } }e:发生的错误参数,但不会影响程序正常运行。
获取文件信息
用来获取文件夹里面的各个文件的信息,判断是否是文件还是文件夹
let fs = require('fs'); fs.stat(`${__dirname}`, (err, stats) => { if(err){ console.log('错误') }else{ stras.isFile() stras.isDirectory(); )`${__dirname}`:要创建文件夹的路径stras.isFile()判断是否是文件。stras.isDirectory();判断是否为文件夹。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
相关内容
- 网站国际化多语言处理工具i18n安装使用方法图文详解_vue.js_
- Vue替代vuex的存储库Pinia详细介绍_vue.js_
- JS删除某个父元素下的所有子元素_javascript技巧_
- 关于vue-color-颜色选择器插件_vue.js_
- vue+elementUI组件tree如何实现单选加条件禁用_vue.js_
- vue实现At人文本输入框示例详解_vue.js_
- 如何在vue3中同时使用tsx与setup语法糖_vue.js_
- vue中监听scroll事件失效的问题及解决_vue.js_
- Vue项目中实现描点跳转scrollIntoView的案例_vue.js_
- vue实现前端按钮组件权限管理_vue.js_
