文件无法复制到另一个目录(fs.access 和 copyFile)



我正在尝试将pdf和/或word文档从一个文件夹复制到另一个文件夹中。下面的代码有时有效,但有时则无效。

app.post('/api/file_archive/:file_name', function (req, res) {
    var file_name = req.params.file_name;
    var src = 'public/uploads/files/' + file_name;
    var dest = 'archived_files/files';
    if(file_name != "") {
        console.log("Entered fs access");
        fs.access(dest, function(err) {
            if(err)
                fs.mkdirSync(dest);
            copyFile(src, path.join(dest, file_name));
            res.json({ message: 'file archived!'});

        });
    };
});

我目前收到此错误:

{ Error: ENOENT: no such file or directory, open 'C:UsersduquetrDocumentsmaize-and-blue-briefpublicuploadsfiles1495121011192_Letter of Rec for RJ.pdf' at Error (native) errno: -4058, code: 'ENOENT', syscall: 'open', path: 'C:\Users\duquetr\Documents\maize-and-blue-brief\public\uploads\files\1495121011192_Letter of Rec for RJ.pdf' }

我搜索了一下,似乎找不到任何与为什么这段代码有时有效有关的内容。

感谢您的帮助!

检查文件夹是否存在,文件将复制到其中。因为复制功能不会添加新文件夹。因此,如果您从"src/1/2.txt"复制到"dest",并且 dest 文件夹中没有另一个名为"1"的文件夹,则"2.txt"的复制过程将不起作用。

检查你的 src,并确保将文件名传递给此函数的代码正常工作!

相关内容

  • 没有找到相关文章

最新更新