【发布时间】:2019-05-17 07:27:37
【问题描述】:
我需要获取图像文件的 base64。
我得到的只是文件的本地文件路径,如下所示:C:\APPL\scans\IMG555.jpg
我尝试了这段代码,但似乎不起作用。
var name = 'IMG555.jpg';
var path = '`C:\APPL\scans\';
export const fileToBase64 = (filename, filepath) => {
return new Promise(resolve => {
var file = new File([filename], filepath);
var reader = new FileReader();
// Read file content on file loaded event
reader.onload = function(event) {
resolve(event.target.result);
};
// Convert data to base64
reader.readAsDataURL(file);
});
};
fileToBase64(name , path).then(result = {
console.log(result);
});
我只得到 base64 的一部分(小长度)。所以,它不是一个有效的图像文件。
有人有更好的方法吗?
【问题讨论】:
-
您是在 nwjs 或 electron 之类的环境中,还是用户可以通过拖放或
<input type="file" />选择该文件?否则,出于安全原因,您将无法从用户磁盘中读取任何文件。 -
另外,
path字符串的开头有一个反引号,它可能不应该存在。 -
你的密码好像无效!
标签: javascript jquery base64 filepath