Dateien erstellen/ bearbeiten/ lesen

M

moon_bat

Gast
Hallo,

ich habe mich mit einem Tutorial auf Youtube beschäftigt, in dem es darum ging:
https://www.youtube.com/watch?v=D-7XPvWUfHY&list=PL71C6DFDDF73835C2&index=44
- prüfen ob eine Textdatei existiert
- Datei erstellen
- aus Datei lesen
- in Datei schreiben

Das erste Programm funktionierte (nachdem ich rausfand, wie beim Mac der Pfad angegeben wird), wunderbar. Als es jedoch darum ging, eine Datei zu erstellen usw. bekam ich bei der Ausführung immer folgende Fehlermeldung:

java.io.FileNotFoundException: /User/lydiaroscher/Desktop/test2.txt (No such file or directory)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
at java.io.FileOutputStream.<init>(FileOutputStream.java:70)
at java.util.Formatter.<init>(Formatter.java:1915)
at dateitest.main(dateitest.java:12)

Ich denke es ist wichtig zu erwähnen, dass ich die Programme an meinem MacBook geschrieben habe. Denn offenbar liegt es am Betriebssystem, jedenfalls funktionierte das Lesen aus einer Datei mit exakt dem gleichen Code an meinem Windows PC.

Hier also mein Quellcode
- prüfen ob eine Textdatei existiert:

Java:
import java.io.File;

public class dateitest {

	public static void main(String[] args) {
		File f = new File("/Users/mustermann/Desktop/text1.txt");
		if(f.exists()){
			System.out.println("Die Datei " + f.getName() + " existiert");
		}else{
			System.out.println("Die Datei gibt es nicht.");
		}
	}
}

- Datei erstellen:
Java:
	import java.io.File;
	import java.io.FileNotFoundException;
	import java.util.Formatter;

public class dateitest {

		public static void main(String[] args) {
			File f = new File("/User/mustermann/Desktop/test2.txt");
			if(!f.exists()){ 
				try {
					Formatter format = new Formatter("/User/mustermann/Desktop/test2.txt");
				} catch (FileNotFoundException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		}
	}

Wie gesagt, der erste funktioniert, der zweite und alle weiteren nicht, die poste ich aber erst mal nicht, wenn nicht unbedingt notwendig, da ich denke dass es sich um ein und den selben Fehler handelt und das nur unnütz viel Quellcode werden würde..

Ich hoffe ihr könnt mir helfen!
Vielen Dank schon mal und liebe Grüße!
 

Kevin94

Top Contributor
Ich glaube kaum, dass das auf einem anderen OS funktioniert. Der Fehler steckt in Zeile 9 des zweiten Codes:
[JAVA=9]if(!f.exists()){ [/code]
Wenn die Datei NICHT existiert versuchst du sie mit dem Formatter zu lesen, das kann doch nicht funktionieren.
 

X5-599

Top Contributor
Falsch. Er versucht die Datei, wenn noch nicht vorhanden zu erstellen. Zumindest auf Windows funktioniert das auch.

Edit: Ich vermute mal (Teile) des Pfades existieren nicht. Vielleicht User und Users durcheinander gebracht?
 
Zuletzt bearbeitet:

Kevin94

Top Contributor
Dann hatte Michael... mit seiner Nachfrage wohl doch recht. Ich tippe mal auf die unterschiedlichen Dateisysteme. Ich kenne Mac nicht, aber kann es sein, dass man für den Pfad Adminrechte benötigt oder er nicht existiert? Unter Windows würde es mich übrigens wundern, wenn diese Datei auf dem Desktop landet (ohne C: am Anfang), aber ich nehme mal an du hast den Pfad dann entsprechend angepasst.

Was man ausprobieren könnte, wäre relative Pfade zu verwenden, bzw. im selben Verzeichnis versuchen die Datei zu erstellen.
 
N

nillehammer

Gast
Die
Code:
FileNotFoundException
kann durchaus zu Misinterpretationen führen. Sie muss nämlich garnicht heißen, dass ein "File not found" ist. Schaut man sich die API-Doc zu dem von Dir verwendeten Konstruktor an, so liest man in der Sektion Exceptions folgendes: FileNotFoundException - If the given file name does not denote an existing, writable regular file and a new regular file of that name cannot be created, or if some other error occurs while opening or creating the file
Das kann so ziemlich alles sein. Ich würde hier speziell auf fehlende Dateirechte, nicht existenten Pfad oder einen erfolglosen Schreib-Lock tippen (Datei evtl woanders lesend geöffnet? Evtl. Streams/Reader nicht korrekt geschlossen?).
 
M

moon_bat

Gast
@ X5-599 ich danke dir, du hattest Recht, so ein blöder Fehler.. und ich habe Stunden damit verbracht den Fehler zu finden.. bei Users fehlte hinten das s.. -.-

Also den Formatter habe ich verwendet, weil das in dem Tutorial auch so gemacht wurde, ich bin aber gern für neue Vorschläge offen!

Offenbar wird der Formatter auf diese Weise „missbraucht“, dazu würde ich mich über eine genaue Erklärung freuen.
 

Michael...

Top Contributor
Die Klasse File bietet die Methode
Code:
createNewFile()
um eine Datei, falls noch nicht vorhanden zu erstellen. Funktioniert allerdings auch nur, wenn das Verzeichnis existiert.
 

VfL_Freak

Top Contributor
Moin,

Funktioniert allerdings auch nur, wenn das Verzeichnis existiert
Genau - und auch der Pfad lässt sich ggf. ganz simpel erzeugen :

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();
} /* if */

Gruß
Klaus
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Jar erstellen - .png Dateien "mitgeben"? Java Basics - Anfänger-Themen 3
A Mit Java Dateien erstellen Java Basics - Anfänger-Themen 23
B Jar Dateien erstellen Java Basics - Anfänger-Themen 7
Antoras Dateien erstellen Java Basics - Anfänger-Themen 7
G Dateien erstellen / Text in Dateien schreiben Java Basics - Anfänger-Themen 8
G Dateien erstellen Java Basics - Anfänger-Themen 23
A ausführbare Dateien mit Java erstellen? Java Basics - Anfänger-Themen 4
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
I Dateien aus dem Resource Folder laden Java Basics - Anfänger-Themen 2
A Thread XML-Dateien zusammenfügen Java Basics - Anfänger-Themen 11
Buroto Threads Verschiedene .txt Dateien Auf Listen und Verbinden Java Basics - Anfänger-Themen 3
J Dateien lesen und schreiben Java Basics - Anfänger-Themen 5
B Jar Dateien ohne IDE verwenden? Java Basics - Anfänger-Themen 1
A Optimierung eines Programms: Mergen der Dateien Java Basics - Anfänger-Themen 23
A Zwei XML-Dateien Mergen Java Basics - Anfänger-Themen 14
A Input/Output Mehrere Csv-Dateien einlesen Java Basics - Anfänger-Themen 2
LetsSebi Dateien werden nicht in Zip gespeichert Java Basics - Anfänger-Themen 1
J Alle .java Dateien von einem Verzeichnis in eine Zip speichern Java Basics - Anfänger-Themen 2
J Alle Dateien aus einem Verzeichnis laden Java Basics - Anfänger-Themen 10
MiMa log4j als separate Dateien in Schleife? Java Basics - Anfänger-Themen 6
M Scannen von *.txt - Dateien; wo sind der oder die Fehler? Java Basics - Anfänger-Themen 4
A Input/Output Dateien einlesen und ausgeben Java Basics - Anfänger-Themen 7
S Lese- / Schreibfähigkeit von Dateien sicherstellen Java Basics - Anfänger-Themen 1
C "HelloWorld" - Dateien erstellt, aber ist es eine class-Datei? Java Basics - Anfänger-Themen 2
J Java findet plötzlich die Dateien im Projekt nicht mehr. Java Basics - Anfänger-Themen 12
J Dateien in Verzeichnissen rekursiv auflisten wirft Exception Java Basics - Anfänger-Themen 4
L Classpath Alle Dateien im Classpath finden Java Basics - Anfänger-Themen 4
MiMa Formate für Dateien und Pfade? Java Basics - Anfänger-Themen 1
O Datei in mehrere kleine Dateien umwandeln Java Basics - Anfänger-Themen 47
L Richtige Reihenfolge der Dateien Java Basics - Anfänger-Themen 5
CptK Datentypen Text Dateien einlesen Java Basics - Anfänger-Themen 3
J Logging erzeugt zwei dateien.... Java Basics - Anfänger-Themen 7
A Dateien Verschieben Java Basics - Anfänger-Themen 1
M Mehre Dateien parallel kopieren mit Multithreading Java Basics - Anfänger-Themen 8
C Methoden Dateien im Ordner anzeigen Java Basics - Anfänger-Themen 12
J Java-Dateien lassen sich nicht editieren Java Basics - Anfänger-Themen 46
E FTP Dateien hochladen Java Basics - Anfänger-Themen 3
J Probleme beim schreiben von Dateien Java Basics - Anfänger-Themen 5
Korvinus Vergleichen von 2 csv-Dateien Java Basics - Anfänger-Themen 2
I Texte mit Absätzen in Dateien speichern und auslesen Java Basics - Anfänger-Themen 1
M "substring()" mit Dateien und Pfadangaben Java Basics - Anfänger-Themen 5
Voreck Jar Dateien Standart programm ändern Java Basics - Anfänger-Themen 12
K Dateien aus Source-Package verwenden Java Basics - Anfänger-Themen 10
B Dateien aus dem "resource" - Folder kopieren in Verzeichnis Java Basics - Anfänger-Themen 9
B Kopieren von Dateien mit Adminberechtigungen Java Basics - Anfänger-Themen 14
F Threads ftp4j, viele Dateien upload Java Basics - Anfänger-Themen 5
P Einen Ordner mit Dateien hochladen [FTP] Java Basics - Anfänger-Themen 2
X Dateien direkt hintereinander schreiben, Dateiname Java Basics - Anfänger-Themen 25
G Messwerte in 2 Dateien schreiben Java Basics - Anfänger-Themen 20
C Verarbeitung von sehr großen Dateien Java Basics - Anfänger-Themen 52
F Input/Output Dateien lesen/schreiben Java Basics - Anfänger-Themen 1
V Mehrere Dateien aus JFileChooser in eine ArrayList speichern Java Basics - Anfänger-Themen 2
K Dateien lesen | IndexOutOfBoundsException Java Basics - Anfänger-Themen 2
T Classpath Problem mit dem auslesen von Text-Dateien (Pfad) Java Basics - Anfänger-Themen 3
A attach source: Zusammenhang zwischen JAR und .class/.java Dateien? Java Basics - Anfänger-Themen 2
T .jar Datei als Ordner benutzen/ Dateien aus .jar Datei auslesen Java Basics - Anfänger-Themen 3
C Klassen Class Files nachladen (mehrer .jar Dateien) Java Basics - Anfänger-Themen 2
Bluedaishi for schleife um Dateien wieder zusammen zu fügen Java Basics - Anfänger-Themen 11
S Resourcen-Dateien im Jar-File verfügbar machen (Intellij 14) Java Basics - Anfänger-Themen 14
J Dateien für anderen User "mitgeben" Java Basics - Anfänger-Themen 1
S Dateien mit Java verschieben Java Basics - Anfänger-Themen 6
A Heap Space Error bei rekursiver Suche in Dateien trotz nur einer Zeile im Speicher Java Basics - Anfänger-Themen 26
E Dateien werden nicht gelöscht Java Basics - Anfänger-Themen 10
S Class Dateien decompilieren Java Basics - Anfänger-Themen 4
T Fehler beim Schreiben in Dateien! Java Basics - Anfänger-Themen 4
Bluedaishi Dateien Lassen sich unter windows nicht löschen Java Basics - Anfänger-Themen 8
Z Mehrere XML-Dateien zu einer zusammenfügen Java Basics - Anfänger-Themen 3
K JAR Dateien einbinden - funkt nicht wie es sollte... Java Basics - Anfänger-Themen 22
M Threads nio Dateien kopieren, Threads und Gui Java Basics - Anfänger-Themen 0
J *.sql Dateien in Java Java Basics - Anfänger-Themen 1
P Dateien im Ordner auflisten. Java Basics - Anfänger-Themen 3
P Compiler-Fehler .java Dateien kompilieren und .class Dateien zur .jar Java Basics - Anfänger-Themen 4
S Daten aus anderen Dateien in neue Datei einlesen Java Basics - Anfänger-Themen 3
M Input/Output Arbeiten mit extrem vielen Dateien Java Basics - Anfänger-Themen 8
R File chooser Dateien in frame anzeigen lassen Java Basics - Anfänger-Themen 5
N tar-Dateien Java Basics - Anfänger-Themen 6
B Methoden Dateien konvertieren Java Basics - Anfänger-Themen 3
L Dateien speichern/auslesen Java Basics - Anfänger-Themen 5
M Input/Output Probleme beim Parsen von CSV und TXT Dateien Java Basics - Anfänger-Themen 7
P Wiedereinstieg und kann keine Dateien mehr öffnen... Java Basics - Anfänger-Themen 13
F Classpath Dateien einbinden und Classpath durchsuchen Java Basics - Anfänger-Themen 2
N Java Programm zum Suchen und Ersetzen von Text Dateien Java Basics - Anfänger-Themen 10
S Dateien/LinkedList/StringBuffer - SOrtierung klappt nicht so ganz Java Basics - Anfänger-Themen 2
U Best Practice Nicht-permanente Links auf Dateien Java Basics - Anfänger-Themen 5
B In welchem (Default) Pfad erstellt Java Dateien? Java Basics - Anfänger-Themen 4
I Methoden zum lesen und speichern von Dateien Java Basics - Anfänger-Themen 2
B .ut dateien ignorieren und fortsetzen Java Basics - Anfänger-Themen 9
R Ressourcen in JAR-Dateien Java Basics - Anfänger-Themen 2
J jar Dateien global erreichbar machen Java Basics - Anfänger-Themen 3
L Zusammenführen mehrerer .txt Dateien Java Basics - Anfänger-Themen 4
S Dateien in RAM kopieren und ausführen? Java Basics - Anfänger-Themen 4
O Java Dateien verschlüsseln? Java Basics - Anfänger-Themen 22
K Unterschied zwischen Jar, war und ear Dateien Java Basics - Anfänger-Themen 3
B Dateien kopieren, entpacken, XML auslesen! Java Basics - Anfänger-Themen 7
B Dateien Verschieben! Java Basics - Anfänger-Themen 8
B ältere Dateien verschieben Java Basics - Anfänger-Themen 3
G Erste Schritte Nach bestimmten Dateien suchen und dann in die Registry schreiben. Java Basics - Anfänger-Themen 6
J Laden von Dateien Java Basics - Anfänger-Themen 19
I Xml dateien zusammenfügen Java Basics - Anfänger-Themen 12
I Dateien in Ordner und Unterordner durchsuchen Java Basics - Anfänger-Themen 18

Ähnliche Java Themen

Neue Themen


Oben