2017-04-15 62 views
0

運行代碼我在AngularJS和科爾多瓦挺新的,並有一些小問題需要解決簡單的問題。 我正在學習Cordova-Plugin-File,並且無法在我的AngularJS移動設備應用程序中運行它。有人能幫助我嗎?我是不是能夠在科爾多瓦 - 插件文件

按照代碼,是我從網上例子服用。

的javascript:

var logOb = ""; 
    window.resolveLocalFileSystemURL(cordova.file.dataDirectory, function (dir) { 
     console.log("got main dir", dir); 
     dir.getFile("log.txt", { create: true }, function (file) { 
      console.log("got the file", file); 
      logOb = file; 
      writelog("App started"); 
     }); 
    }); 

    function writelog(str) { 
     if (!logOb) alert('teste2'); 
     var log = str + " [" + (new Date()) + "]\n"; 
     console.log("going to log " + log); 
     logOb.createWriter(function (fileWriter) { 

      fileWriter.seek(fileWriter.length); 

      var blob = new Blob([log], { type: 'text/plain' }); 
      fileWriter.write(blob); 
      console.log("ok, in theory i worked"); 
     }, fail); 
    } 

記住,我已經測試該插件,它運作良好。我用這個教程來測試它:根據需要

https://www.youtube.com/watch?v=bizW561ALsY

的命令在我的手機返回的文件夾。我只是在上面的例子中遇到問題,當進入'createWriter'命令時,並且無法從中傳遞。

如果有人可以幫助我,我將非常感激。

回答

0

更新。

,而我是在等待響應,我發現一些方法可以開始做我需要什麼。首先,我能夠創建檔案.csv。

$scope.criaCSV = function() { 
    // Create Object 

    var items = [ 
     { name: "Item 1", color: "Green", size: "X-Large" }, 
     { name: "Item 2", color: "Green", size: "X-Large" }, 
     { name: "Item 3", color: "Green", size: "X-Large" }]; 

    // Convert Object to JSON 
    var jsonObject = JSON.stringify(items); 

    // Convert JSON to CSV & Display CSV 
    ConvertToCSV(jsonObject); 
}; 

function ConvertToCSV(objArray) { 
    var array = typeof objArray != 'object' ? JSON.parse(objArray) : objArray; 
    var str = ''; 

    for (var i = 0; i < array.length; i++) { 
     var line = ''; 
     for (var index in array[i]) { 
      if (line != '') line += ',' 
      line += array[i][index]; 
     } 
     str += line + '\r\n'; 
    } 

和後我才得以保存一個txt archieve在我的手機:

document.addEventListener("deviceready", onDeviceReady, false); 

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

function onSuccess(fileSystem) { 
    alert(fileSystem); 
    var directoryEntry = fileSystem.root; 

    //lets create a file named readme.txt. getFile method actually creates a file and returns a pointer(FileEntry) if it doesn't exist otherwise just returns a pointer to it. It returns the file pointer as callback parameter. 
    directoryEntry.getFile("readme.txt", { create: true, exclusive: false }, function (fileEntry) { 
     //lets write something into the file 
     fileEntry.createWriter(function (writer) { 
      alert("This is the text inside readme file"); 
     }, function (error) { 
      alert("Error occurred while writing to file. Error code is: " + error.code); 
     }); 
    }, function (error) { 
     alert("Error occurred while getting a pointer to file. Error code is: " + error.code); 
    }); 
} 

function onError(evt) { 
    alert("Error occurred during request to file system pointer. Error code is: " + evt.code); 
} 

會有人幫我把那個拱傳遞到我保存的txt的代碼,改了TXT拱??

謝謝大家。