2010-12-28 7 views
2

J'ai essayé de lire un fichier à partir du paquet d'applications utilisant FileReader classe PhoneGap:FileReader renvoie un résultat vide pour le fichier du paquet

... 
loadFile: function (path, callback) { 
    fileReader = new FileReader(); 

    fileReader.onerror = function() { 
    ... 
    } 

    fileReader.onload = function (evt) { 
    callback(evt.target.result); 
    } 

    fileReader.readAsText("./www/" + path); 
} 

Dans ce chemin d'exemple est quelque chose comme « index.html ». Le rappel onerror n'est jamais appelé. onload est appelée mais evt.target.result est vide. Avez-vous des suggestions? Est-il généralement possible de lire les fichiers du bundle avec l'API phonegap? Puis-je utiliser des chemins relatifs comme "./www/foo.txt"?

Merci pour vos réponses!

Répondre

3

Le chemin transmis à readAsText est relatif au dossier "Documents" dans le sandbox d'applications. Par conséquent, vous devez simplement fixer le chemin en remplaçant la ligne

fileReader.readAsText("./www/" + path); 

avec

fileReader.readAsText("./../myApp.app/www/" + path); 

pour accéder au fichier. Cela fonctionne pour moi.

Questions connexes