In Textdatei speichern und auslesen

Njewuon

Mitglied
Hi Leute,
ich habe letztens mit Java angefangen zu programmieren.
Ich habe mir einen kleinen Mathe Trainer programmiert.
Leider kapier ich nicht wie ich zu Progammstart eine Datei suchen lassen kann, wenn diese vorhanden ist, einige daten wie namen, passwort und punktestand auszulesen oder wenn diese nicht vorhanden ist sie zu erstellen. Hoffentlich kann mir jemand helfen.
 
Wenn ich das Bsp. von dem tut her nehm, sollte er ja eigentlich "Zwei Jäger treffen sich..." in eine txt datei speicher. Wenn ich das aber ausführ finde ich keine solche datei :bahnhof:
Java:
Writer fw = null;

try
{
  fw = new FileWriter( "fileWriter.txt" );
  fw.write( "Zwei Jäger treffen sich..." );
  fw.append( System.getProperty("line.separator") ); // e.g. "\n"
}
catch ( IOException e ) {
  System.err.println( "Konnte Datei nicht erstellen" );
}
finally {
  if ( fw != null )
    try { fw.close(); } catch ( IOException e ) { e.printStackTrace(); }
}
 
Java:
File f = new File("fileWriter.txt"); // import java.io.File;
System.out.println(f.getAbsolutePath());
System.out.println(f.exists());
 
Jetzt blick ich langsam nicht mehr durch :
"cannot find symbol
symbol: method getAbsolutePath()
location: class java.io.Writer
System.out.println(f.getAbsolutePath());
 
die Fehlermeldung besagt, dass du getAbsolutePath() nicht am File, sondern am Writer aufrufst,
nicht deutlich zu lesen?

deinen Code musst du also selber auf sinnvoll umstellen oder posten
 
Tut mir leid dass ich mich noch nicht so auskenne :bahnhof:
Java:
public void cmdSpeichern_ActionPerformed(ActionEvent evt) {

         Writer fw = null;

         try
         {
           fw = new FileWriter( "fileWriter.txt" );
           System.out.println(fw.getAbsolutePath());
           System.out.println(fw.exists());
           fw.write( "Name: " + name + "\n" + "Richtig: " + richtig + "\n" + "Falsch: " + falsch + "\n" + "Übersprungen: " + ubers);
           fw.append( System.getProperty("line.separator") ); // e.g. "\n"
          }
          catch ( IOException e ) {

          System.err.println( "Konnte Datei nicht erstellen" );
               
          }
          finally {
          if ( fw != null )

          try { fw.close(); } catch ( IOException e ) { e.printStackTrace(); }
               
          }

  }[code=Java]
[/code]
 
Ist das Dein Ernst ???:L :bae:

statt
Java:
Writer fw = new FileWriter( "fileWriter.txt" );

nimmst Du :
Java:
File f = new File("fileWriter.txt");

Gruß
Klaus
 
Grosses Sorry + Dankeschön 😀
wie kann ich bei Beginn überprüfen ob die datei schon vorhanden ist, und wenn sie vorhanden ist die werte auslesen und wenn sie nicht vorhanden neu erstellen
 
schau mal hier:
Java:
String strAktFile = strPfad + strFilename;
File fDir = new File( strPfad );

// falls angegebenes DIR nicht ex. --> erstellen 
if ( !fDir.exists() ) 
{
    // "mkdirs" erzeugt auch alle Unterverzeichnisse!!
    fDir.mkdirs();
}

// Datei speichern
File fPrtFile = new File( strAktFile );
BufferedWriter f;
try 
{
    f = new BufferedWriter( new FileWriter(fPrtFile) );
    f.write( strData );
    f.close();
} 
catch ( IOException e ) 
{
    System.out.println( "Schreiben von " + fPrtFile.getAbsoluteFile() + " NICHT erfolgreich!!" );
    e.printStackTrace();
}

Gruß
Klaus
 
Zuletzt bearbeitet:
Wie kann ich machen dass wenn die datei existiert, dass er die ersten Zeichen vor dem Leerzeichen überprüft, mit dem inhalt eines jtextfeldes vergleicht, und die Zeichen nach dem Leerzeichen mit dem 2. jtextfled vergleicht?
 
Ja das schon. Einiges weis ich ja nur eben nicht wie ich zb: von einem textdokument eine Zeichenkette bis zum Leerzeichen in einen String speichern kann oder ab dem Leerzeichen bis zum Ende in eine variable speichern kann.:bahnhof:
 

Neue Themen


Zurück
Oben