2015-11-05 118 views
0

我目前正受到File API問題的挑戰。我似乎無法訪問目錄的內容。下面的代碼應該訪問一個目錄及其子目錄,然後讀取其中的所有文件。無法使用cordova訪問目錄和子目錄文件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()函數,但它傳遞的是根目錄中的文件夾,而不是​​中的文件夾。

*我最近升級到cordova 3.5.1並使用文件系統插件1.3.3。

回答

0

使用此解決:

window.resolveLocalFileSystemURL(tmpPath, function(gotDir) { 

    var reader = gotDir.createReader(); //<-- this is the answer 

    reader.readEntries(successCatalog, failCatalogList); 
}, catalogfilefail) 
  • 我使用filesystem.root.createReader()切換到gotDir.createReader()
  • 我原來的代碼僅適用於科爾多瓦2.9.0,當我切換到3.5.1,它動了,所以我不得不用這種新的方式。