📅  最后修改于: 2023-12-03 15:12:28.720000             🧑  作者: Mango
在前端开发中,有时需要对文件夹中的文件进行重命名操作。借助JavaScript,可以轻松实现这项功能。以下是一个使用JavaScript重命名文件夹中文件的方法。
首先,需要读取文件夹中所有文件的名称。可以使用Node.js的File System(fs)模块,
const fs = require('fs')
const path = require('path')
// 读取指定文件夹中的文件名
function readDirFiles(dirPath) {
// 读取文件夹内容
const fileList = fs.readdirSync(dirPath)
return fileList
}
const dirPath = './test'
const fileList = readDirFiles(dirPath)
console.log(fileList)
以上代码使用了 Node.js 的 readDirSync 方法读取文件夹中的文件列表,可以将读取到的文件名输出到控制台。
接下来,可以使用 fs 模块的 rename 方法进行重命名操作。
function renameFile(dirPath, oldFileName, newFileName) {
const oldPath = path.join(dirPath, oldFileName)
const newPath = path.join(dirPath, newFileName)
fs.renameSync(oldPath, newPath)
}
const dirPath = './test'
const oldFileName = 'old-name.txt'
const newFileName = 'new-name.txt'
renameFile(dirPath, oldFileName, newFileName)
以上代码中,使用了path模块的join方法拼接了文件路径,然后使用 Node.js 的 renameSync 方法重命名了文件。
请看以下完整代码,可以读取指定文件夹中的所有文件名,并将这些文件重命名为指定名称:
const fs = require('fs')
const path = require('path')
// 读取指定文件夹中的文件名
function readDirFiles(dirPath) {
const fileList = fs.readdirSync(dirPath)
return fileList
}
// 重命名文件
function renameFile(dirPath, oldFileName, newFileName) {
const oldPath = path.join(dirPath, oldFileName)
const newPath = path.join(dirPath, newFileName)
fs.renameSync(oldPath, newPath)
}
// 重命名文件夹中的文件
function renameFiles(dirPath) {
const fileList = readDirFiles(dirPath)
fileList.forEach((file) => {
const oldFileName = file
const newFileName = 'new-' + file
renameFile(dirPath, oldFileName, newFileName)
})
}
const dirPath = './test'
renameFiles(dirPath)
以上代码中,先读取文件夹中所有的文件名,然后循环对每个文件进行重命名。在这里我们将所有文件都重命名为 "new-" + 老文件名 的形式。
以上就是使用 JavaScript 重命名文件夹中文件的方法。借助Node.js,可以方便地读取文件夹内容并进行重命名操作。需要注意的是,该操作是直接修改文件名,不可逆,所以在代码中应当谨慎对待。