Frage: Textdatei mit aufs Handy geben und in Datenbank einpflegen!

  • Antworten:3
  • OffenNicht stickyNicht beantwortet

02.05.2012 16:49:56

Hallo,

cool, dass dieses Forum wirklich so hilfreich ist :). Ich hoffe mir kann auch jemand helfen.

Also ich entwickle eine App wie z.B. Wer wird reich? oder Wer wird Millionär?
Sprich es gibt eine Frage und 4 Antworten. Die Fragen und Antworten bekomme ich aus einer lokalen Datenbank(SQL), die ich selber erstellt habe. Jetzt möchte ich beim installieren der App eine Textdatei mitgeben, welche die Fragen und Antworten enthält. Diese kann ich auch lesen. Das Problem besteht dadrin:

Welchen Dateipfad hat die Textdatei, wenn ich diese im Eclipse Explorer in meinem com.bla.hallo package habe?
Wird die Datei überhaupt mitgegeben, wenn diese lediglich im Ordner liegt?
Wo soll ich die Textdatei am besten im Projekt haben?

Wenn einer eine andere Lösung hat, um meine Datenbank zu füllen, stehe ich dieser gerne offen gegenüber.

Vielen Dank für Eure Mühe und Zeit!

M. Tertel

02.05.2012 18:28:43

Hallo,
meiner Meinung nach genügt es nicht die Datei einfach in das Ecplise Projekt zu kopieren.
Du musst die Datei als Resource bekannt machen. (Das habe ich aber auch noch nicht gemacht)

Ich fülle meine DB indem ich eine Textdatei(mit SQL Statements) auf die SD-Karte kopiere und dann in der App aufrufe.

Gruss Bernd

UPDATE : habe ein paar Threads weiter das passende Thema gefunden
http://www.androidpit.de/de/android/forum/thread/460739/Eclipse-Resourcen

— geändert am 02.05.2012 18:33:50

07.05.2012 23:01:29

Tach!

Mathias Tertel
Welchen Dateipfad hat die Textdatei, wenn ich diese im Eclipse Explorer in meinem com.bla.hallo package habe?
Wird die Datei überhaupt mitgegeben, wenn diese lediglich im Ordner liegt?
Wo soll ich die Textdatei am besten im Projekt haben?

Siehe dazu in der Android-Entwickler-Dokumentation den Abschnitt Application Resources, besonders die Informationen zu raw/res/ und assets/.

Wenn einer eine andere Lösung hat, um meine Datenbank zu füllen, stehe ich dieser gerne offen gegenüber.

Du kannst auch im Ereignis-Handler onCreate() vom SQLiteOpenHelper die notwendigen Insert-Statements notieren. Genau wie bei deinem ersten Ansatz mit der mitgelieferten Textdatei hast du dauerhaft überflüssige Informationen in der .apk-Datei, die du nicht gelöscht bekommst und nach dem einmaligen Erstellen der Datenbank nur noch Platz belegen. Ein alternativer Ansatz dazu wäre ein Download. Diese Datei kannst du anschließend löschen. Auch eine fertige SQLite-Datenbank downloaden wäre möglich, allerdings ist es etwas frickelig, sie an den vorgesehenen Ort zu kopieren. Aber auch dazu findet man Informationen im Netz.


Felix.