如何在 Electron 中使用 fs 保存 PDF 文件?
Posted
技术标签:
【中文标题】如何在 Electron 中使用 fs 保存 PDF 文件?【英文标题】:How to save a PDF file with fs in Electron? 【发布时间】:2018-10-18 21:38:45 【问题描述】:有一个<input type="file" id="upload" accept="application/pdf"/>
接受应该保存到电子应用程序内某个位置的 pdf。用 fs 保存文件工作得很好,但我不知道它是如何与 pdf 一起工作的。对于数据和编码,我不知道我需要将什么交给writeFileSync()
。
function upload(path)
"use strict";
var fs = require('fs');
var file = $("#upload").prop("files")[0];
try
fs.writeFileSync(path, foo, bar);
catch(e)
console.log(e);
【问题讨论】:
看看下面的答案:***.com/questions/31040014/… 这样做吗? 是的,我也找到了这个,但它只是说body
for data 但它没有定义..
【参考方案1】:
根据我刚才看到的,你需要把你正在捕获的文件路径,用fs.readFile(path[, options], callback)
读取它
这会返回一个“数据”值,然后您应该可以使用它来写入您想要的位置。
fs.readFile('/tmp/my.pdf', (err, data) =>
if (err) throw err;
fs.writeFileSync(path, data, 'binary');
);
https://nodejs.org/api/fs.html#fs_fs_readfile_path_options_callback
我从这里开始,看看:How do I handle local file uploads in electron?
答案显示捕获文件名 (dialog.showOpenDialog
) 的方式略有不同,但我认为只要您获得完整路径,您所做的应该没问题。
【讨论】:
以上是关于如何在 Electron 中使用 fs 保存 PDF 文件?的主要内容,如果未能解决你的问题,请参考以下文章
FS - 在 Webpack 5 上为 Electron 使用 FS