【发布时间】:2016-02-09 22:58:29
【问题描述】:
我正在尝试读取位于我的 android 手机“sdcard”目录中的 txt 文件。但是“FileReader”的“onloadend”事件永远不会触发,实际上这些事件似乎都不起作用。我正在使用“phonegap-build”构建应用程序,并通过在“config.xml”文件中添加以下行来导入cordova-plugin-file 插件:
<gap:plugin name="cordova-plugin-file" source="npm" />
代码如下(变量和函数都是葡萄牙语,不好意思):
// Importar dados
$("#ImportarDados").click(function() {
// obter sistema de ficheiros (diretoria principal)
window.resolveLocalFileSystemURL(
cordova.file.externalRootDirectory,
obtiveSistFich,
erro
);
// obter ficheiro
function obtiveSistFich(diretoria) {
console.log("obtive diretoria principal", diretoria);
var ficheiro_entrada = localStorage.getItem("dir_importacao")
diretoria.getFile(ficheiro_entrada, {create:true}, obtiveFicheiro, erro);
}
// ler ficheiro
function obtiveFicheiro(ficheiro) {
console.log("obtive o ficheiro", ficheiro);
ficheiro.file(ficheiroLido(ficheiro), erro);
}
// imprimir ficheiro
function ficheiroLido(ficheiro) {
console.log(leitor);
// TILL HERE SEEMS TO WORKS FINE!!
var leitor = new FileReader();
leitor.onloadend = function(evt) {
// IT NEVER WORKS!!!!
alert("sucesso de leitura!");
alert(evt.target.result);
};
leitor.readAsText(ficheiro);
}
// lidar com possíveis erros (debug)
function erro(erro) {
console.log(erro.code);
}
}
【问题讨论】:
标签: android cordova phonegap-build cordova-plugins