无法使用 cordova 文件访问目录和子目录 API
Could not access directory and subdirectory using cordova File API
我目前正面临文件 API 问题的挑战。我似乎无法访问目录的内容。下面的代码应该访问一个目录及其子目录,然后读取其中的所有文件。
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0,
function(filesystem) {
var tmpPath = filesystem.root.toURL() + "Inmark/InmarkCatalog";
window.resolveLocalFileSystemURL(tmpPath, function(gotDir) {
var reader = filesystem.root.createReader();
reader.path = gotDir.toURL();
reader.readEntries(successCatalog, failCatalogList);
}, catalogfilefail)
}, catalogfilefail);
但实际情况是它不会进入目录,而是进入内部存储的根目录。它仍然是 运行 reader.readEntries()
函数,但它传递的是根目录中的文件夹,而不是 Inmark/InmarkCatalog
.
中的文件夹
*我最近升级到 cordova 3.5.1 并使用文件系统插件 1.3.3。
使用这个解决了:
window.resolveLocalFileSystemURL(tmpPath, function(gotDir) {
var reader = gotDir.createReader(); //<-- this is the answer
reader.readEntries(successCatalog, failCatalogList);
}, catalogfilefail)
- 我从使用
filesystem.root.createReader()
切换到 gotDir.createReader()
- 我的原始代码仅适用于 cordova 2.9.0,当我切换到 3.5.1 时,它停止工作,所以我不得不使用这种新方法。
我目前正面临文件 API 问题的挑战。我似乎无法访问目录的内容。下面的代码应该访问一个目录及其子目录,然后读取其中的所有文件。
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0,
function(filesystem) {
var tmpPath = filesystem.root.toURL() + "Inmark/InmarkCatalog";
window.resolveLocalFileSystemURL(tmpPath, function(gotDir) {
var reader = filesystem.root.createReader();
reader.path = gotDir.toURL();
reader.readEntries(successCatalog, failCatalogList);
}, catalogfilefail)
}, catalogfilefail);
但实际情况是它不会进入目录,而是进入内部存储的根目录。它仍然是 运行 reader.readEntries()
函数,但它传递的是根目录中的文件夹,而不是 Inmark/InmarkCatalog
.
*我最近升级到 cordova 3.5.1 并使用文件系统插件 1.3.3。
使用这个解决了:
window.resolveLocalFileSystemURL(tmpPath, function(gotDir) {
var reader = gotDir.createReader(); //<-- this is the answer
reader.readEntries(successCatalog, failCatalogList);
}, catalogfilefail)
- 我从使用
filesystem.root.createReader()
切换到gotDir.createReader()
- 我的原始代码仅适用于 cordova 2.9.0,当我切换到 3.5.1 时,它停止工作,所以我不得不使用这种新方法。