FileReader возвращает пустой результат для файла из пакета
-
13-10-2019 - |
Вопрос
Я попытался прочитать файл из пакета приложений, используя PhoneGap FileReader
учебный класс:
...
loadFile: function (path, callback) {
fileReader = new FileReader();
fileReader.onerror = function () {
...
}
fileReader.onload = function (evt) {
callback(evt.target.result);
}
fileReader.readAsText("./www/" + path);
}
В этом примере путь - это что -то вроде «index.html». А onerror
обратный вызов никогда не называется. onload
называется, но evt.target.result
пустой. У Вас есть какие-то предложения? Возможно ли в целом читать файлы из пакета с помощью API PhoneGap? Могу ли я использовать относительные пути, такие как "./www/foo.txt"?
Спасибо за ответы!
Решение
Путь, который проходит в readAsText
относительно папки «документы» в песочнице приложений. Следовательно, вы должны просто исправить путь, заменив линию
fileReader.readAsText("./www/" + path);
с
fileReader.readAsText("./../myApp.app/www/" + path);
Чтобы получить доступ к файлу. Это работает для меня.
Не связан с StackOverflow