Prüfen ob Textfile existiert

Schlagdraufunschluss_124

Aktives Mitglied
Hallo Leute !
Ich hab mal wieder ein kleines Problem:

Im grunde will ich mich in meinem kleinen Programm anmelden. Wenn der Benutzername dem System noch nicht bekannt ist, wird eine neue File erstellt, mit dem Benutzernamen als Namen. Dort werden im laufe des Programms Daten abgespeichert. Loggt der Benutzer sich aber mit einem falschen Name ein, so will ich vorher prüfen, ob die Datei existiert. Existiert sie nicht soll der Benutzer sich nochmals einloggen oder ein neues Profil erstellen.

Bis jetzt versuche ich immer das ganze mit".exists()" zu prüfen. Aber irgendwie klappt das nicht so recht.....

Hier werden die Files angelegt:
Java:
public File erstelleBenutzerVerzeichnis(String benutzerName) {

       File verzeichnis = new File("Speicherverzeichnis");
       File benutzer = new File("Speicherverzeichnis/" + benutzerName + ".txt");
       
       

       if (verzeichnis.mkdir() == false) {
           verzeichnis.mkdir();
       }

       if (benutzer.exists() == false) {
           try {
               benutzer.createNewFile();
           } catch (IOException e) {
               e.printStackTrace();
           }
       }
       return benutzer;
   }

In der selben Klasse prüfe ich, ob sie vorhanden sind:
Code:
    public boolean prüfenObDateiExistiert(){
       boolean dateiExistiert = false;
       if(daten.getBenutzerDaten().exists()){
           dateiExistiert = true;
       }
       return dateiExistiert;
   }

Das ganze wird in der Main aufgerufen(ist jetzt halt gerade noch etwas "ungeordnet"):
Java:
    // Anmeldung
       int auswahl = eingabe.anmeldung();

       switch (auswahl) {
       case 1:
        // Prüfen ob Datei vorhanden ist, wenn nicht: Fragen ob der Benutzer erneut einloggen will, oder ein neues Profil erstellen will
           break;
       case 2:
           anmeldung.neuesProfil();
           break;
       case 3:
           anmeldung.profilLöschen();
           break;
       }

       // BenutzerName
       String benutzerName = eingabe.leseBenutzerName();
       daten.setzeBenutzerName(benutzerName);

Hier noch die anmeldungs-Methode der Eingabe Klasse :
Java:
public int anmeldung() {
       int auswahl;
       Scanner scr = new Scanner(System.in);

       System.out.println("Was wollen sie machen?");
       System.out.println("1: Mit bestehendem Profil einloggen");
       System.out.println("2: Neues Profil anlegen");
       System.out.println("3: Bestehendes Profil löschen");

       auswahl = Integer.parseInt(scr.next());
       
       return auswahl;

       
   }
[/code ]
 

Schlagdraufunschluss_124

Aktives Mitglied
Ja das hab ich mir auch schon gedacht. Aber wie kann ich am Beginn meines Programms die File initialisieren, wenn ich zuerst noch prüfen will, ob die File existiert? Ich müsste ja die File ja auch in einer TextFile speichern können...
 

Harry Kane

Top Contributor
Muss ich da nicht irgendwie noch den BenutzerNamen der "exists" als Parameter übergeben, oder wie soll des eigentlich funktionieren?
Nein. Die exists-Methode eines Files bekommt keine Parameter.
Aber wie kann ich am Beginn meines Programms die File initialisieren, wenn ich zuerst noch prüfen will, ob die File existiert?
Gar nicht. Du kannst grundsätzlich nie zuerst "etwas" irgendwie prüfen, und dann dieses "etwas" initialisieren.
Soweit ich deine Codeschnipsel richtig interpretiere, hast du es ja schon richtig gemacht (aber wohl noch nicht verstanden).
Wenn du eine NullPointerException bekommst, dann zeig den stack trace, und alle in Frage kommenden Methoden, die den Fehler erzeugen könnten. So ist das nur ein Rumgerate, was wo aus welchem Grund wohl schiefgehen könnte.
 

BuddaKaeks

Bekanntes Mitglied
Kurze Erklärung zur File Klasse:

Ein File-Objekt ist nicht das physikalisch auf der Festplatte gespeicherte File, es ist eher ein Path-Objekt, welches eben den Pfad zu dem tatsächlichen File angibt.
Darauf können gewisse Operationen ausgeführt werden, z.B. exists() gibt zurück, ob an diesem Speicherort tatsächlich ein File liegt, createNewFile() erzeugt an dieser stelle ein neues (leeres) File.

Um auf den Content des Files zuzugreifen, Benutzt man dann die Klassen FileInputStream (zum lesen) und FileOutputStream (zum schreiben)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
8u3631984 Prüfen ob min. ein Element eines Sets in einem anderen Set enh Allgemeine Java-Themen 4
OnDemand Prüfen ob Bild defekt ist Allgemeine Java-Themen 4
N Prüfen, ob ein String 2x das selbe Zeichen hat Allgemeine Java-Themen 10
W Classpath Reflexion - Prüfen ob man auf ein Feld ändern kann Allgemeine Java-Themen 2
OnDemand Bild prüfen ob defekt Allgemeine Java-Themen 3
B Java Mail: Prüfen, ob Email hat ein Anhang oder nicht Allgemeine Java-Themen 2
Bluedaishi Prüfen ob Datei noch geöffnet ist Allgemeine Java-Themen 59
Stonie Prüfen von direkter Implementierung eines Interfaces Allgemeine Java-Themen 7
J Mit Lombok Integer Range prüfen Allgemeine Java-Themen 6
E Programm auf Installation prüfen Allgemeine Java-Themen 1
S Binärbaum prüfen Allgemeine Java-Themen 0
L String auf zahlenwert prüfen Allgemeine Java-Themen 13
W Datum prüfen + zweistellig Allgemeine Java-Themen 11
perlenfischer1984 Functionsparameter prüfen und eine Exception werfen !? Allgemeine Java-Themen 11
Z Java Exceptions - Auf leeres Feld prüfen Allgemeine Java-Themen 10
F Wie kann ich auf einem System prüfen, ob eine lib verfügbar ist? Allgemeine Java-Themen 2
P Prüfen ob es Variable mit Namen gibt der als String übergeben wird Allgemeine Java-Themen 7
M .jar nach Datei prüfen Allgemeine Java-Themen 2
B Existenz eines Files max 30 sec prüfen Allgemeine Java-Themen 5
B Prüfen, ob ein Element in der Liste nicht existiert Allgemeine Java-Themen 3
F Cardlayout prüfen ob schon vorhanden, keine doppelten Allgemeine Java-Themen 3
turmaline Regex gegen Regex prüfen Allgemeine Java-Themen 4
S Lambda Ausdrücke: @FunctionalInterface Instanzen auf null prüfen Allgemeine Java-Themen 9
D ArrayList index auf gültigkeit prüfen Allgemeine Java-Themen 12
C Best Practice [Arrays] Wie sinnvoll prüfen, ob Array primitive Datentypen enthält? Allgemeine Java-Themen 6
L Prüfen, ob Programm über 32bit oder 64bit Java ausgeführt wird Allgemeine Java-Themen 4
K Methoden Arrays auf true Werte prüfen Allgemeine Java-Themen 4
Y Prüfen ob ein Graph immer einen von mehren Enden erreicht Allgemeine Java-Themen 4
O Prüfen ob String eine Zahl mit maximal 2 Nachkommastellen ist Allgemeine Java-Themen 4
M datei aufruf prüfen Allgemeine Java-Themen 9
D Best Practice Prüfen ob jar nachträglich geändert wurde Allgemeine Java-Themen 2
B Dateien prüfen auf Gleichheit Allgemeine Java-Themen 5
H String auf Zahlen prüfen Allgemeine Java-Themen 4
T auf Valides Datum prüfen Allgemeine Java-Themen 12
N Java Version Prüfen lassen Allgemeine Java-Themen 11
S Variablen Prüfen ob Number vom Typ Integer, Float, Double, ... ist Allgemeine Java-Themen 2
E selber Klassen kompilieren/ prüfen Allgemeine Java-Themen 5
O Variablen Originalname einer übergebenen Variable prüfen Allgemeine Java-Themen 9
T Methoden Zahlenpalindrom laufzeitoptimiert prüfen Allgemeine Java-Themen 4
U ResourceBundles auf vollständigkeit prüfen Allgemeine Java-Themen 2
C jollyday: prüfen, ob Datum = Feiertag Allgemeine Java-Themen 8
C Prüfen ob sich ein Punkt innerhalb einer Kugel befindet (Java3D,nicht-lineare GLS) Allgemeine Java-Themen 5
M Objekt prüfen auf null ->Invocation Target Exception??? Allgemeine Java-Themen 2
E Prüfen ob Fenster mit Namen offen ist Allgemeine Java-Themen 2
M Binärbaum auf vollständigkeit prüfen Allgemeine Java-Themen 4
S Mail Adressen Syntax prüfen Allgemeine Java-Themen 22
O Text mit Wildcard gegen regulären Ausdruck prüfen Allgemeine Java-Themen 3
N List auf null prüfen Allgemeine Java-Themen 2
B generischen Typ prüfen Allgemeine Java-Themen 7
D prüfen, ob Enums bestimmte Elemente enthalten Allgemeine Java-Themen 3
N Prüfen ob Methode ausgeführt wird und diese ggf. abbrechen? Allgemeine Java-Themen 8
B Prüfen ob ein Programm gestartet wurde Allgemeine Java-Themen 23
N ArrayList nach Reihenfolge prüfen Allgemeine Java-Themen 2
C Prüfen auf Zahl und 6 stellig fehlerhaft? warum? Allgemeine Java-Themen 7
D Wie prüfen, ob ein String Teil eines Enum Types ist? Allgemeine Java-Themen 12
H Prüfen, ob doppete Werte in int-Array vorhanden sind Allgemeine Java-Themen 16
data89 Bilder mit Java prüfen - suche dringend Hilfe Allgemeine Java-Themen 8
S Prüfen auf Hex-Wert fester Länge! Allgemeine Java-Themen 5
M Prüfen, welche anderen Programme laufen Allgemeine Java-Themen 5
K Zip dateien prüfen Allgemeine Java-Themen 3
G ZIP Archiv auf Konsistenz prüfen Allgemeine Java-Themen 2
T Parameter einer Klasse auf Interface prüfen Allgemeine Java-Themen 6
L Passwort mit Regulärem Ausdruck prüfen Allgemeine Java-Themen 6
P Sound Buffer prüfen Allgemeine Java-Themen 12
B PrintService - Wie prüfen ob Drucker online ist? Allgemeine Java-Themen 2
A Textfeld prüfen, ob ein Punkt eingegeben wurde Allgemeine Java-Themen 8
flashfactor Prüfen ob bereits eine Instanz gestartet ist Allgemeine Java-Themen 2
C Prüfen, ob eine Methode eine andere überschreibt! WIE? Allgemeine Java-Themen 8
T Prüfen, ob Char ein Quantifier ist Allgemeine Java-Themen 6
N Prüfen ob Objekt in Liste enthalten ist Allgemeine Java-Themen 17
G Prüfen welche JRE-Version gebraucht wird Allgemeine Java-Themen 19
J Mit Patternmatching einen Satz prüfen Allgemeine Java-Themen 12
G Prüfen ob Ziffern einer Zahl pandigital sind? Allgemeine Java-Themen 15
M Prüfen ob Variable vorhanden / initalisiert ist Allgemeine Java-Themen 4
J Wie prüfen ob eine Datei vom OS fertig geschrieben wurde? Allgemeine Java-Themen 6
TheJavaKid Zeile auf existenz von String prüfen. Allgemeine Java-Themen 19
A Weshalb man Parameter auf Gültigkeit prüfen sollte Allgemeine Java-Themen 6
N Prüfen ob ein String in einen Integer umgewandelt werden kan Allgemeine Java-Themen 4
O String auf zahlen prüfen (java 1.3) Allgemeine Java-Themen 4
G Datei Zugriffsrechte prüfen Allgemeine Java-Themen 2
Linad Bilder auf Gleichheit prüfen Allgemeine Java-Themen 6
G ResultSet auf Inhalt prüfen? Allgemeine Java-Themen 2
H Prüfen, ob es sich um ein Integer handelt Allgemeine Java-Themen 4
C String str prüfen Allgemeine Java-Themen 3
H Prüfen ob ein String grösser als 4 Zeichen ist Allgemeine Java-Themen 3
F Prüfen, ob Windows oder UNIX Allgemeine Java-Themen 2
W Klassen Zugriff auf ein Textfile aus allen Klassen. Allgemeine Java-Themen 2
M Textfile erstellen Allgemeine Java-Themen 11
eskimo328 Textfile nach Stromausfall leer Allgemeine Java-Themen 5
T Input/Output Zeilenumbrüche beim exportieren in eine Textfile Allgemeine Java-Themen 7
D welchen line brak benutzt ein geg. textfile Allgemeine Java-Themen 3
K Scanner - große Textfile, nur 0 ab betim. Wert Allgemeine Java-Themen 4
N Encoding Unicode Textfile Allgemeine Java-Themen 5
E TextFile in Array reinspeichern Allgemeine Java-Themen 3
G HTML-Datei einlesen, Plain Text in Textfile speichern Allgemeine Java-Themen 4
P Textfile -> Array -> JTable Allgemeine Java-Themen 9
P Textfile Encoding herausfinden Allgemeine Java-Themen 2
F Umlaute: E-Mail per JavaMail und Textfile Allgemeine Java-Themen 5
I Attribute in Textfile auslesen Allgemeine Java-Themen 13
M Zugriff auf Resource (Textfile) in einem Jar? Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben