Dateien lesen aus /res/... und schreiben ins Anwendungsverzeichnis

flyMASTER

flyMASTER

Neues Mitglied
0
Hi,
ich hänge gerade etwas beim Dateien verarbeiten mit Android.
Mein Program soll Dateien bei der Auslieferung mitliefern, die später aber auch vom Nutzer editiert werden sollen. Deshalb sollen diese beim ersten Programstart in das Anwendungsverzeichnis kopiert werden.

Frage vorab: Gibt es einen Weg Dateien gleich im Programverzeichnis, dass das Program auf dem Zielhandy haben wird zu verpacken?

Momentan speichere ich die Dateien unter /res/..., und da tut sich schon ein Problem auf. Ich finde keine Funktion zum lesen des (!)Inhalts der Datei. Es gibt nur eine Funktion zum lesen der ganzen Datei (openRawResource(...)).

Heraus kommen dann Integer die wohl zu einem Char gecastet werden können. Wenn ich dann die Datei in das Arbeitsverzeichnis der Anwendung kopieren will (openFileOutput(...)) muss ich zum einen ein byte[] des Inhalts besitzen (dieses erzeuge ich mir in dem ich jeden Integer zu 4 Bytes umshifte...) und ausserdem wird scheinbar über outputStreamElement.write() nur der (!)Inhalt der Datei und nicht die gesamte Datei mit Header geschrieben.

Für mich liest sich das ziemlich umständlich und bis jetzt funktioniert es auch noch nicht richtig... gibt es eine elegantere Lösung für das Problem?
 
Hast du' s schon mal mit Assets versucht? Dateien innerhalb des Projekts im Order /assets ablegen und dann mit android.content.res.Resources.getAssets().open(<Pfad + Dateiname>, AssetManager.ACCESS_STREAMING) einen InputStream öffnen.
 
den ordner raw gibt es auch nohc, kommt auf deine datei an, dort kann man rohdaten speichern
 
Danke für eure Hilfe, ich habe mir mit "Rohdaten" einlesen beholfen.
 

Ähnliche Themen

netfreak
  • netfreak
Antworten
10
Aufrufe
391
netfreak
netfreak
B
Antworten
4
Aufrufe
331
bb321
B
S
Antworten
33
Aufrufe
2.383
Sempervivum
S
Zurück
Oben Unten