1. Wir haben diesmal 2 Gewinnspiele zeitgleich für euch - Gewinne einmal ein UMI Plus E - Beim 2ten könnt ihr ein Nomu S30 gewinnen!
  1. r4w, 11.03.2011 #1
    r4w

    r4w Threadstarter Junior Mitglied

    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: 11.03.2011
  2. muck, 11.03.2011 #2
    muck

    muck Android-Hilfe.de Mitglied

    Benutz Du Eclipse? Da kannst Du den FileExplorer einblenden.
     
  3. r4w, 11.03.2011 #3
    r4w

    r4w Threadstarter Junior Mitglied

    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: 11.03.2011
  4. ko5tik, 11.03.2011 #4
    ko5tik

    ko5tik Android-Experte

    Mach doch:
    Code:
    context.openFileInput(fileName)
    
     
  5. r4w, 11.03.2011 #5
    r4w

    r4w Threadstarter Junior Mitglied

    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? ;)
     
  6. muck, 11.03.2011 #6
    muck

    muck Android-Hilfe.de Mitglied

    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/
     
  7. r4w, 11.03.2011 #7
    r4w

    r4w Threadstarter Junior Mitglied

    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
     
  8. SuNRiZe, 21.04.2012 #8
    SuNRiZe

    SuNRiZe Junior Mitglied

    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
     

Diese Seite empfehlen

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. android daten aus datei schreiben

    ,
  2. datei lesen und schreiben java android

    ,
  3. android in datei schreiben

    ,
  4. android.premission datei schreiben,
  5. java programmieren datei mode_append,
  6. dateien auslesen android,
  7. Android eclipse Projekt Datei auslesen und schreiben,
  8. fso in datei schreiben und lesen,
  9. android development externe dateien