如何显示已保存为缓冲区的文件?

时间:2015-11-10 02:59:19

标签: node.js mongodb buffer electron

我将文件保存为我的mongo数据库中的Buffers(使用mongoose,nodejs,electron)。现在,我只使用纯文本文件保持简单。我使用

读取了一个文件

fs.readFile(filePath, function(err, data) { if (err) {console.log(err);} typeof callback == "function" && callback(data); });

然后我使用data变量在我的数据库中创建一个新文件。而且,现在我的mongodb中存储了BinData(0,"SGVsbG8gV29ybGQK")的内容。到目前为止一切都很好。

现在,如果我想在UI中显示该文件该怎么办?在这种情况下,在电子?我认为有两个步骤。

第1步第一步是将此变量从数据库中移出并进入前端。仅供参考:模型名为File,存储文件内容的变量称为content

所以,我已经尝试了File.content.toString(),它给了我Object {type: "Buffer", data: Array[7]}这不是我期待的字符串。这里发生了什么?我读了here这应该有效。

第2步:显示此文件。现在,因为我现在只使用文本文件,所以我可以在步骤1工作后显示我得到的字符串。但是,有更好的方法来处理更复杂的文件吗?图像和GIF等?

1 个答案:

答案 0 :(得分:0)

你应该保存文件mime。

然后设置response.header MIME

proc contents data=library.dataset out=nobs;
run;

proc summary data=nobs nway;
class nobs;
var delobs;
output out=nobs_summ sum=;
run;