在Cordova Windows 10应用程序中读取文件

时间:2016-05-07 22:49:01

标签: cordova readfile windows-10-universal

我正在构建Cordova应用程序,并且我使用cordova-plugin-file来读取文件。它在Android和iOS上运行良好,但我无法在Windows 10 Universal应用程序上运行。我读取文件的代码是:

fs.readFromFile = function(base, fileName) {
    pathToFile = base + 'www/' + fileName;
    return new Promise(function(resolve, reject) {
        window.resolveLocalFileSystemURL(pathToFile, function(fileEntry) {
            fileEntry.file(function(file) {
                var reader = new FileReader();

                reader.onloadend = function(e) {
                    resolve(this.result);
                };

                reader.readAsText(file);
            }, reject);
        }, function(er) {
            console.log(er);
            reject();
        });
    });
};

然后我称之为:

     fs.readFromFile(cordova.file.applicationDirectory, 'lang/' + language + '.json')
        .then(function(content) {
            lang = JSON.parse(content);
            loadFilesCallback().then(resolve);
        });

我总是在Windows 10上获得FileError.ENCODING_ERR。我试图将编码从UTF-8更改为Windows-1250,但仍然是同样的错误。

在插件文档中,我发现Windos不支持FileReader.readAsArrayBuffer,也不支持FileWriter.write(blob)。我只是做错了什么,或者Windows 10 Universal App上的插件不支持读写?

0 个答案:

没有答案