我正在使用PhoneGap编写我的第一个
Android应用程序,但我对FileReader的文档感到有些困惑.我需要使用readAsDataURL()方法获取一个图像文件并将其转换为Base64字符串.
From their documentation:
function win(file) { var reader = new FileReader(); reader.onloadend = function(evt) { console.log("read success"); console.log(evt.target.result); }; reader.readAsDataURL(file); }; var fail = function(evt) { console.log(error.code); }; entry.file(win,fail);
除了最后一行,我几乎理解了所有这些:entry.file(win,fail).没有定义入口,但我认为它是一个FileEntry对象.问题是我找不到关于如何生成FileEntry对象的文档,以及在什么时候传递文件路径.
解决方法
好的,终于有了这个工作.在线可怕的文档!我发布我的代码以防其他人遇到麻烦:
window.resolveLocalFileSystemURI(filePath,// success callback; generates the FileEntry object needed to convert to Base64 string function (fileEntry) { // convert to Base64 string function win(file) { var reader = new FileReader(); reader.onloadend = function (evt) { var obj = evt.target.result; // this is your Base64 string }; reader.readAsDataURL(file); }; var fail = function (evt) { }; fileEntry.file(win,fail); },// error callback function () { } );