Datei schreiben / auslesen

R

r4w

Neues Mitglied
0
Hallo zusammen,

ich beschäftige mich seit ein paar Tagen mit Java/Android Entwicklung und bin dabei eine kleine TestApp zu schreiben um etwas herumzuprobieren und dadurch zu lernen.

Nach Hello World hab ich mich drangemacht einen Wert auf einem Textfeld in eine Datei in den internen Telefonspeicher mittels FileOutputStream zu schreiben und die Daten über FileInputStream wieder einzulesen /auszugeben.


Code:
String FILENAME = "vtsave.txt";
        String string = eingabe.toString();

        FileOutputStream fos;
        try {
            fos = openFileOutput(FILENAME, Context.MODE_WORLD_READABLE);
            try {
                fos.write(string.getBytes());
                bgr_feld.setText("Datei in " + FILENAME + " erfolgreich gespeichert!");
            } catch (IOException e) {
                e.printStackTrace();
            }
            try {
                fos.close();                                
            } catch (IOException e) { 
                e.printStackTrace();
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

Beim Auslesen bleibt mein fstream leider immer leer (null).. komme einfach nicht auf den Fehler.

Code:
String FILENAME = "vtsave.txt";
FileInputStream fstream = null;
        
        try {
            fstream = new FileInputStream(FILENAME);
        } catch (Exception FileNotFoundException){ 
             laden_feld.setText("Datei nicht gefunden!");    }
        
        try {
            int ausgabe = fstream.read();
            laden_feld.setText((char)ausgabe);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
Wiegesagt, ich bin Neuling und bitte schonmal um Verzeihung falls es sehr offensichtlich ist ;) Wäre allerdings um Hilfe sehr dankbar! ;)

Ich hoffe jemand ist so nett, mir etwas unter die Arme zu greifen .. :)

Update: FileExplorerhab ich gefunden, und die Datei vtsave.txt wurde auch gespeichert. Allerdings habe ich immernoch keinen Erfolg beim Auslesen.

LG r4w
 
Zuletzt bearbeitet:
Benutz Du Eclipse? Da kannst Du den FileExplorer einblenden.
 
Ja, ich nutze Eclipse.. Wusste nicht das es einen File Explorer gibt, danke.

Update: FileExplorerhab ich gefunden, und die Datei vtsave.txt wurde auch gespeichert. Allerdings habe ich immernoch keinen Erfolg beim Auslesen.
 
Zuletzt bearbeitet:
Mach doch:
Code:
context.openFileInput(fileName)
 
ko5tik schrieb:
Mach doch:
Code:
context.openFileInput(fileName)

Hat mich auch nicht weitergebracht.. gab ne Fehlermeldung in Eclipse.
Code:
Cannot make a static reference to the non-static method openFileInput(String) from the type Context

Ich möchte nur gerne den Inhalt (Zeilenweise oder komplett) aus einer (text)-Datei lesen... finde meinen Fehler nicht :(

Hat jemand vielleicht ne Lösung oder ein paar CodeSchnipsel? ;)
 
Du ließt nur ein Byte aus und Dein Cast dürfte so auch nicht funktionieren. Zu den versch. Arten Files einzulesen gibt es min. 100.000 Artikel im Netz.

Ein Möglichkeit wäre zeichenweise in ein StringBuffer zu lesen.
Wie man es macht kommt immer drauf an wie die Datei aussieht und was ich im Anschluß mit machen will.
Code:
//Schreiben
String string = "Hallo";
try {
 FileOutputStream out = openFileOutput("test.txt", MODE_PRIVATE);
 
 out.write(string.getBytes());
 out.close();
 
} catch (FileNotFoundException e) {
 e.printStackTrace();
} catch (IOException e) {
 e.printStackTrace();
}
 
//lesen
int ausgabe;
StringBuffer strInhalt = new StringBuffer("");
try {
 FileInputStream in = openFileInput("test.txt");
 
 while( (ausgabe = in.read()) != -1)
  strInhalt.append((char)ausgabe);
 
} catch (FileNotFoundException e) {
 e.printStackTrace();
} catch (IOException e) {
 e.printStackTrace();
}

http://openbook.galileocomputing.de/javainsel/
 
Danke für deine Antwort, muck!

Komme noch oft durcheinander, aber Übung macht ja bekanntlich den Meister..

Werde deinen Code nachher mal ausprobieren zuhause!



Sent from my HTC Desire using Tapatalk
 
Jap das Agenda Widget ist ja schon von Anfang an auf dem Handy und Minimalistic Text hab ich :)

Gesendet von meinem GT-N7000 mit Tapatalk 2
 

Ähnliche Themen

H
Antworten
2
Aufrufe
1.303
Hcman
H
M
  • MikelKatzengreis
Antworten
5
Aufrufe
108
swa00
swa00
S
Antworten
33
Aufrufe
2.651
Sempervivum
S
Zurück
Oben Unten