【问题标题】:How to copy array into file in phonegap?如何将数组复制到phonegap中的文件中?
【发布时间】:2013-04-19 05:40:27
【问题描述】:

我有如下图片数组:

var imageArray = new Array(10);

function onCameraPicSuccess (imgData)  {
  imageArray.push("data:image/jpeg;base64," + imgData);
}

我正在将捕获的图像复制到这个数组中。

现在如何将这个数组复制到文件中?我正在使用phonegap。 我想复制到本地的特定文件夹中,例如 myPhotos。 有什么帮助吗?

是否有可能在 javascript 中做到这一点? 或者我应该从 javascript 调用 JAVA 小程序写入文件?

【问题讨论】:

    标签: java javascript android cordova


    【解决方案1】:

    您可以使用FileWriter API 将数据的字符串版本写入磁盘。

    快速示例

    function win(writer) {
        writer.onwrite = function(evt) {
            console.log("write success");
        };
        writer.write(JSON.stringify(imageArray));
    };
    
    var fail = function(evt) {
        console.log(error.code);
    };
    
    entry.createWriter(win, fail);
    

    有关整个上下文,请参阅 FileWriter API here 下的完整示例。

    您可以使用FileReader API 读回数据。记得调用 JSON.parse 将其转回 JavaScript 对象。

    【讨论】:

    • 好的,但我想保存到一些单独的文件,而不是磁盘。像 myLocalPlace/myPhotos
    • 这个文件将保存在哪里?有人可以告诉我吗?文档中没有提到
    • 只要你可以读/写它,为什么它的存储位置很重要?如果我没记错的话,Android 将文件存储在 /data/data/com.[app-name]/[file] 中。有move or copy the file to different locations搜索“moveTo”的方法。
    • 我无法在文件写入器 api 中保存图像。只有文本数据可以这样保存。如果我保存图像,它就无法打开
    • base64 先对它们进行编码,将图像数据转换为文本格式。
    猜你喜欢
    • 1970-01-01
    • 2016-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-26
    • 1970-01-01
    • 2018-01-27
    • 2016-03-11
    相关资源
    最近更新 更多