4

我正在尝试将存储在 phonegap 文件夹(www/default_files/file.txt)中的文件复制到 iOS 中的文档文件夹中,到目前为止我得到的是:

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 文件夹...

有任何想法吗?

4

3 回答 3

4

此代码适用于我在 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')
        });
}
于 2014-10-31T10:08:53.143 回答
1

您可以访问 www 文件夹如下
/var/mobile/Applications/35----------------9087/yourapp.app/www/yourfolder/yourfilename.ext

编辑
使用alert(window.location.pathname);以查找应用程序的路径。

于 2013-04-01T07:55:37.333 回答
0

使用cordova-plugin-file。然后,您可以使用字符串访问 www 文件夹:cordova.file.applicationDirectory+“www/”,使用字符串访问 Documents 文件夹:cordova.file.documentsDirectory。

于 2018-03-07T10:29:51.737 回答