2

我正在使用 Cordova,并尝试在设备上的 SD 卡的根目录中创建一个文件夹。我使用以下代码创建文件夹并在其中添加文件“login.txt”:

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);

function gotFS(fileSystem) {
   fileSystem.root.getDirectory("citylook", {create: true}, gotDir);
}

function gotDir(dirEntry) {
    dirEntry.getFile("login.txt", {create: true, exclusive: true}, gotFile);
}

function gotFile(fileEntry) {
    // Do something with fileEntry here
    fileEntry.createWriter(gotFileWriter, fail);
}

function gotFileWriter(writer) {
    writer.onwriteend = function(evt) {
        console.log("contents of file now 'some sample text'");
        writer.truncate(11);
        writer.onwriteend = function(evt) {
            writer.seek(0);
            writer.write(testo);
            writer.onwriteend = function(evt){
                console.log("contents of file now '"+testo+"'");
            }
        };
    };
    writer.write("some sample text");
}

function fail(error) {
    console.log(error.code);
}

现在,我需要在“citylook”文件夹中创建一个文件夹,所以我尝试了这个:

function onDeviceReady() {
    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, null);
}

function onSuccess() {
    fileSystem.root.getDirectory("citylook", {create: true, exclusive: false}, onGetDirectoryWin, onGetDirectoryFail);
    fileSystem.root.getDirectory("citylook/nuovo", {create: true, exclusive: false}, onGetDirectoryWin2, onGetDirectoryFail2);
}

但我无法创建子文件夹。我的代码有什么问题?谢谢你。


解决了:

fileSystem.root.getDirectory("citylook", {create: true}, gotDir);
fileSystem.root.getDirectory("citylook/subfolder", {create: true}, gotDir);
4

2 回答 2

2
window.resolveLocalFileSystemURL(
        cordova.file.externalDataDirectory,
        function(entry) {
          entry.getDirectory(
            "myNewDirectory",
            { create: true, exclusive: false },
            function(result) {
              alert(JSON.stringify(result));
            },
            onError
          );
        }
      );

我正在使用cordova 创建一个文件夹到Android/data//files 成功。

于 2018-09-03T07:04:17.460 回答
0
var type = window.PERSISTENT;
   var size = 5*1024*1024;

   window.requestFileSystem(type, 0, successCallback, errorCallback);
   function successCallback(fs) {
       var dir=fs.root;
       alert('root   -'+dir.fullPath);// O/P:-root   -/
      dir.getDirectory('Albums', {create: true}, function(dirEntry) {
          alert('Albums Path:'+dirEntry.fullPath);// O/P:-Allbums Path: /Albums/
         dirEntry.getDirectory('Images',{create:true},function(subDir){
                              alert('Hello');
                              alert('SubDirPath='+subDir.fullPath);//output:-SubDirPath=/Albums/Images/
             //subDir.getFile('Log.txt',{create: true, exclusive: false}, function(fileEntry) {

        //writeFile(fileEntry, null, isAppend);
                 //alert('File Path'+fileEntry.fullPath);

    }, onErrorCallback);

         },errorCallback);
          dirEntry.getDirectory('Audio',{create:true},function(subDir){
                              alert('Hello');
                              alert('SubDirPath='+subDir.fullPath);//output:-SubDirPath=/Albums/Audio/
         },errorCallback);
      }, errorCallback);
   }
        function errorCallback(error) {
      alert("ERROR: " + error.code)
   }

此代码有助于在根目录中创建文件夹和子文件夹。/Albums 是主文件夹。/Albums/Images/ 和 /Albums/Audio/ 是子文件夹(图像和音频)

于 2016-11-10T11:31:53.753 回答