1. 程式人生 > >wex5 file檔案儲存

wex5 file檔案儲存

在js中需要引入file的cordova包

require("cordova!cordova-plugin-file");

 

如果要存到手機的根目錄下,在Native資料夾的對應專案中的config.xml配置檔案裡新增

<preference name="AndroidPersistentFileLocation" value="Compatibility"/>

 

參考文件:http://docs.wex5.com/cordova-plugin-file/

 

建立檔案:

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fs) {

 

    console.log('file system open: ' + fs.name);

    fs.root.getFile("newPersistentFile.txt", { create: true, exclusive: false }, function (fileEntry) {

 

        console.log("fileEntry is file?" + fileEntry.isFile.toString());

        // fileEntry.name == 'someFile.txt'

        // fileEntry.fullPath == '/someFile.txt'

        writeFile(fileEntry, null);

 

    }, onErrorCreateFile);

 

}, onErrorLoadFs);

 

 

寫入檔案

function writeFile(fileEntry, dataObj) {

    // Create a FileWriter object for our FileEntry (log.txt).

    fileEntry.createWriter(function (fileWriter) {

 

        fileWriter.onwriteend = function() {

            console.log("Successful file read...");

            readFile(fileEntry);

        };

 

        fileWriter.onerror = function (e) {

            console.log("Failed file read: " + e.toString());

        };

 

        // If data object is not passed in,

        // create a new Blob instead.

        if (!dataObj) {

            dataObj = new Blob(['some file data'], { type: 'text/plain' });

        }

 

        fileWriter.write(dataObj);

    });

}

 

讀取檔案

function readFile(fileEntry) {

 

    fileEntry.file(function (file) {

        var reader = new FileReader();

 

        reader.onloadend = function() {

            console.log("Successful file read: " + this.result);

            displayFileData(fileEntry.fullPath + ": " + this.result);

        };

 

        reader.readAsText(file);

 

    }, onErrorReadFile);

}