gpt4 book ai didi

javascript - 将源文件复制到 Nodejs 中的另一个目标

转载 作者:IT老高 更新时间:2023-10-28 23:13:54 27 4
gpt4 key购买 nike

我正在尝试使用 fs-extra 模块将图像从一个文件夹复制到另一个文件夹。

var fse = require('fs-extra');

function copyimage() {
fse.copy('mainisp.jpg', './test', function (err) {
if (err)
return console.error(err)
});
}

这是我的目录

这是我一直得到的错误:

Error {errno: -4058, code: "ENOENT", syscall: "lstat", path: "E:\mainisp.jpg", message: "ENOENT: no such file or directory, lstat 'E:\mainisp.jpg'"}

通过将目标更改为 ./test/ 我收到此错误

Error {errno: -4058, code: "ENOENT", syscall: "lstat", path: "E:\Development\Node apps\Node softwares\Digital_library\mainisp.jpg", message: "ENOENT: no such file or directory, lstat 'E:\Devel… apps\Node softwares\Digital_library\mainisp.jpg'"}

注意:我没有在浏览器中测试这个。这是一个 Nwjs 应用程序,附加的错误图片来自 Nwjs 控制台。

最佳答案

您可以使用原生 fs 模块轻松地使用流来做到这一点。

const fs = require('fs');
const path = require('path');

let filename = 'mainisp.jpg';
let src = path.join(__dirname, filename);
let destDir = path.join(__dirname, 'test');

fs.access(destDir, (err) => {
if(err)
fs.mkdirSync(destDir);

copyFile(src, path.join(destDir, filename));
});


function copyFile(src, dest) {

let readStream = fs.createReadStream(src);

readStream.once('error', (err) => {
console.log(err);
});

readStream.once('end', () => {
console.log('done copying');
});

readStream.pipe(fs.createWriteStream(dest));
}

关于javascript - 将源文件复制到 Nodejs 中的另一个目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38595524/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com