Электрон: сохранить файл PDF с помощью fs - PullRequest
0 голосов
/ 08 мая 2018

Существует <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);
    }
}

Спасибо за ваше время и помощь!

1 Ответ

0 голосов
/ 09 мая 2018

Согласно тому, что я только что прочитал, вам нужно взять путь к файлу, который вы захватываете, и прочитать его с помощью fs.readFile(path[, options], callback)

Возвращает значение «data», которое вы затем сможете использовать для записи в нужное вам место.

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

Я начал здесь, посмотрите: Как мне обрабатывать локальные загрузки файлов в электронном виде?

Ответ показывает немного другой способ захвата имени файла (dialog.showOpenDialog), но я думаю, что то, что вы делаете, должно быть хорошо, пока вы получаете полный путь.

...