nodejs 遍历文件夹下所有的图片改名为中文
安装依赖
$ npm init -y && npm i fs-extra globby request -S
main.js
const fs = require('node-fs-extra') const globby = require('globby') const request = require('request') // 简单的GET请求获取翻译结果 const _request = (text, cb) => { request({ url: encodeURI(`http://119.23.22.136:6635/baidu_transapi.php?text=${text}&type=tuofeng`), }, function (err, response, body) { // 如果翻译异常那么直接中断 if (err) // 抛出异常吧 throw new Error(`${err.message} ///////////////// ${text} ///////////////// ${body}`) // 必须有内容返回并且请求码为200才可以回调 if (body && response.statusCode === 200) // 回调 cb && cb(body) }) } // 从字符串中区分出名字和后缀 const get = name => { const len = name.lastIndexOf('.') return { name: name.substr(0, len), ext: name.substr(len) } } // 遍历当前文件夹下所有的文件 (async () => { // 筛选当前文件夹下的文件类型 const names = await globby(['*.png|*.jpg|*.gif']) // 开始遍历改名 for (let [index, filename] of names.entries()) { // 获取文件名和前缀 const { name, ext } = get(filename) // 发送请求 _request(name, ch => { // 如果翻译结果不为空并且不为原本的值 if (ch && ch != name) { // 那么修改文件名 fs.rename(filename, ch + ext, err => { // 如果出现异常,那么直接中止 if (err) // 抛出异常吧 throw new Error(`${err.message} ///////////////// ${filename} ///////////////// ${ch}`) }) } }) } })()
- 上一篇 »php删除路径下的所有文件夹和文件的代码
- 下一篇 »php删除路径下的所有文件夹和文件的代码