2013-03-10 40 views
3

我想將存儲在phonegap文件夾(www/default_files/file.txt)中的文件複製到iOS中的文檔文件夾,到目前爲止我所得到的是:使用PhoneGap將文件從www複製到'文檔'

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSys) 
{ 
    fileSys.root.getFile("file.txt", null, function(theFile){ // file exist don't do anything}, 
    function(error) 
    { 
     // file does not exist, so copy it 
     fileSys.copyTo(fileSys.root.fullPath, "www/default_files/file.txt", 
     function success(entry) 
     { 
      console.log("Success: " + entry); 
     }, 
      function error(entry) 
     { 
      console.log(entry); 
     }); 
    }); 
}, fileError); 

fileSys.root.fullPath包含正確的文件路徑,問題是如何訪問www文件夾...

任何想法?

回答

1

您可以像下面那樣訪問www文件夾
/var/mobile/Applications/35=9087/yourapp.app/www/yourfolder/yourfilename。轉

編輯
使用alert(window.location.pathname);找到你的應用程序的路徑。

5

此代碼適用於iOS上的我。此功能將數據庫文件的副本從/ www文件夾實現到/ Documents文件夾。

function copyBase(){ 
    var wwwPath = window.location.pathname; 
    var basePath = 'file://'+ wwwPath.substring(0,wwwPath.length-10); 
    window.resolveLocalFileSystemURL(basePath+'myDB.db', 
     function(fileDB){ 
      console.log('success! database was found') 
      window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, null); 

       function onSuccess(fileSystem) { 
        var documentsPath = fileSystem.root; 
        fileDB.copyTo(documentsPath, 'myDB.db', 
        function(){ 
         console.log('copying was successful') 
        }, 
        function(){ 
         console.log('unsuccessful copying') 
        }); 
       } 
     }, 
     function(){ 
      console.log('failure! database was not found') 
     }); 
} 
+1

您保存了我的日子 – allemattio 2015-05-29 12:35:40

+0

您可以使用'cordova.file.applicationDirectory'而不是hacky www-path。 – 2017-10-01 11:39:19

0

使用cordova-plugin-file。 然後您可以使用以下字符串訪問www文件夾:cordova.file.applicationDirectory +「www /」 和Documents文件夾使用字符串: cordova.file.documentsDirectory。

相關問題