L'exportation d'une base de données SQLite vers un fichier XML dans Android
Je sais que c'est possible, mais je ne suis pas vraiment sûr où commencer. Quelqu'un a été en mesure de réaliser cela?
Grâce.
Vous devez vous connecter pour publier un commentaire.
La
DataXmlExporter
classe décrit dans cet article d'exportation SQL lite DB à un fichier XML.http://www.screaming-penguin.com/node/7749
L'exemple complet est disponible dans ce repo SVN. Le
ManageData
classe appelle à l'exportation.http://totsp.com/svn/repo/AndroidExamples/trunk/
Vous aurez besoin pour créer une application de classe qui expose la DB et référencé sous le nom de l'application dans le AndroidManifest.xml fichier. Ensuite l'utiliser en tant que base de l'argument de la
DataXmlExporter
constructeur.Voici la classe d'application que j'utilise. Vous devriez déjà avoir une classe (probablement pas nommé
DatabaseHelper
) qui s'étendSQLiteOpenHelper
Regarder le code source ici l'exportation-un-sqlite-base de données-pour-un-xml-fichier-dans-android
Le seul changement que j'ai eu à faire (arrêter quelques Eclipse mises en garde) était de près d'un curseur dans la exportData( ) la méthode. Pour rendre le code plus portable, moi aussi j'ai passé le fichier XML et l'emplacement comme un argument plutôt que comme une déclaration finale champ.
Le code écrit le fichier XML de la carte SD. Maintenant, @mmaitlen qui énumérés dans le code source, sur son blog, ne pas ajouter des fonctionnalités pour tester l'existence d'une unité de stockage externe. Donc ce qui reste à faire pour vous.
Cependant, vous pouvez incorporer un code simple pour tester l'existence d'une écriture de la carte mémoire avec l'extrait suivant (non testé):
Test pour le stockage externe est utile si vous avez de gros fichiers à créer, qui risquent de dépasser la capacité interne.
J'ai trouvé cela très utile:
http://www.phonesdevelopers.com/1788273/
À l'aide de la façon suivante pour exporter vers la carte sd:
Bien sûr, n'oubliez pas: