我正在开发一个平台是浏览器的cordova应用程序。
我需要从本地文件系统访问文本文件,所以我使用的是cordova-plugin文件。
但是我在我的chrome控制台中失败了,就像这样(没有CLI错误):
代码:5
消息:"提供给API的URI格式错误,或者生成的数据网址超出了数据网址的网址长度限制。"
name:" EncodingError"
作为我的代码打击:
document.addEventListener('deviceready', dataRead, false);
function dataRead() {
window.webkitRequestFileSystem(window.PERSISTENT, 100500*1024*1024, function() {
window.webkitResolveLocalFileSystemURL("filesystem:" + cordova.file.applicationDirectory + "1111.csv", gotFile, fail);
},function (e) {
console.log(e);
});
}
function fail(e) {
console.log("FileSystem Error");
console.dir(e);
}
function gotFile(fileEntry) {
fileEntry.file(function(file) {
var reader = new FileReader();
reader.onloadend = function(e) {
console.log("Text is: "+this.result);
}
reader.readAsText(file);
});
}
我的URI是非法还是其他原因?
有人能指出原因吗?或者给我一个正确的例子。
感谢任何帮助。
答案 0 :(得分:1)
文件插件的好参考点是its auto and manual tests,可以在cordova-plugin-test-framework和the file plugin documentation中运行。
关于你的问题的几点:
100500*1024*1024
的内容,例如10*1024*1024
, window.webkitResolveLocalFileSystemURL("filesystem:" + cordova.file.applicationDirectory + "1111.csv", gotFile, fail);
尝试使用
window.resolveLocalFileSystemURL("filesystem:" + cordova.file.applicationDirectory + "persistent/1111.csv", gotFile, fail);