web前端之node批量修改文件名、大小驼峰与符号之间的相互转换、把小驼峰文件名改为短横线、readdir、stat、rename

本文主要是介绍web前端之node批量修改文件名、大小驼峰与符号之间的相互转换、把小驼峰文件名改为短横线、readdir、stat、rename,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MENU

  • node批量修改文件名
  • 大小驼峰与符号之间的相互转换


node批量修改文件名

const fs = require('fs');
const path = require('path');/*** 批量修改文件名* @param {String} folderPath */
function batchModifyFileName(folderPath = '') {// 获取文件夹中的文件列表fs.readdir(folderPath, (err, files) => {if (err) return alert(`无法读取文件夹: ${JSON.stringify(err)}`);// 遍历文件列表files.forEach((file) => {const filePath = path.join(folderPath, file);// 检查文件是否为目录fs.stat(filePath, (err, stats) => {if (err) return alert(`无法获取文件状态: ${JSON.stringify(err)}`);// 只处理文件,忽略目录if (stats.isFile()) {// 将小驼峰改为横杠const newFileName = file.replace(/([a-z])([A-Z])/g, '$1-$2').> toLowerCase();// 构建新的文件路径const newFilePath = path.join(folderPath, newFileName);// 重命名文件fs.rename(filePath, newFilePath, (err) => {if (err) {console.error('无法重命名文件:', err);} else {console.log(`重命名文件成功: ${file} <=> ${newFileName}`);}});}});});});
}// E:/mzkj/mzkj/project/muzi-device-admin/src/assets/icons/svg
// E:/mzkj/mssj/aWeb/demo/batchModifyFileName
batchModifyFileName('E:/mzkj/mzkj/project/muzi-device-admin/src/assets/icons/svg');

以上代码只能在node环境下运行,在浏览器环境中运行报错。
node index.js


大小驼峰与符号之间的相互转换

/*** 大小驼峰转为符号* @param {String} name * @param {String} str * @returns */
function lettersToSymbol(name = '', str = '') {return name.replace(/([a-z])([A-Z])/g, `$1${str}$2`).toLowerCase()
}/*** 符号转为大小驼峰* @param {String} name * @param {String} str * @param {Boolean} isBig * @returns */
function symbolsToLetters(name = '', str = '-_|$#', isBig = false) {let regex = new RegExp(`[${str}]([a-z])`, "g"),result = name.replace(regex, (match, letter) => letter.toUpperCase());if (isBig) result = result.charAt(0).toUpperCase() + result.slice(1);return result;
}console.log(lettersToSymbol('myVariableName', '|'));
// my|variable|name
console.log(lettersToSymbol('MyVariableName', '_'));
// my_variable_name
console.log(symbolsToLetters('my-variable-name', '-', true));
// MyVariableName
console.log(symbolsToLetters('my_variable_name'));
// myVariableName
console.log(symbolsToLetters('my|variable|name'));
// myVariableName
console.log(symbolsToLetters('my$variable#name', undefined, true));
// MyVariableName

这篇关于web前端之node批量修改文件名、大小驼峰与符号之间的相互转换、把小驼峰文件名改为短横线、readdir、stat、rename的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/596449

相关文章

JSON Web Token在登陆中的使用过程

《JSONWebToken在登陆中的使用过程》:本文主要介绍JSONWebToken在登陆中的使用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录JWT 介绍微服务架构中的 JWT 使用结合微服务网关的 JWT 验证1. 用户登录,生成 JWT2. 自定义过滤

Java实现时间与字符串互相转换详解

《Java实现时间与字符串互相转换详解》这篇文章主要为大家详细介绍了Java中实现时间与字符串互相转换的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、日期格式化为字符串(一)使用预定义格式(二)自定义格式二、字符串解析为日期(一)解析ISO格式字符串(二)解析自定义

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre

python+opencv处理颜色之将目标颜色转换实例代码

《python+opencv处理颜色之将目标颜色转换实例代码》OpenCV是一个的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上,:本文主要介绍python+ope... 目录下面是代码+ 效果 + 解释转HSV: 关于颜色总是要转HSV的掩膜再标注总结 目标:将红色的部分滤

利用Python开发Markdown表格结构转换为Excel工具

《利用Python开发Markdown表格结构转换为Excel工具》在数据管理和文档编写过程中,我们经常使用Markdown来记录表格数据,但它没有Excel使用方便,所以本文将使用Python编写一... 目录1.完整代码2. 项目概述3. 代码解析3.1 依赖库3.2 GUI 设计3.3 解析 Mark

Vue中组件之间传值的六种方式(完整版)

《Vue中组件之间传值的六种方式(完整版)》组件是vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用,针对不同的使用场景,如何选择行之有效的通信方式... 目录前言方法一、props/$emit1.父组件向子组件传值2.子组件向父组件传值(通过事件形式)方

css中的 vertical-align与line-height作用详解

《css中的vertical-align与line-height作用详解》:本文主要介绍了CSS中的`vertical-align`和`line-height`属性,包括它们的作用、适用元素、属性值、常见使用场景、常见问题及解决方案,详细内容请阅读本文,希望能对你有所帮助... 目录vertical-ali

C语言中的数据类型强制转换

《C语言中的数据类型强制转换》:本文主要介绍C语言中的数据类型强制转换方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C语言数据类型强制转换自动转换强制转换类型总结C语言数据类型强制转换强制类型转换:是通过类型转换运算来实现的,主要的数据类型转换分为自动转换