Dateizugriff

Java:
File f = new File("secmon.cfg");
System.out.println(f.getAbsolutePath());

Gibt mir folgendes aus:
C:\Dokumente und Einstellungen\TMA\Eigene Dateien\Eclipse_projects\SECMONv2\secmon.conf

Wenn ich es auf die Methode von Joschi70 mache, bekomme ich im Prinzip das selbe Ergebnis, nur dass die Leerzeichen mit "%20" gefüllt sind.
Kann es sein, dass Java mit beidem nicht richtig umgehen kann? Also Leerzeichen und/oder %20 im Pfad?

Fehlermeldung mit joschi70´s Methode:
java.io.FileNotFoundException: C:\Dokumente%20und%20Einstellungen\TMA\Eigene%20Dateien\Eclipse_projects\SECMONv2\bin\secmon.conf (Das System kann den angegebenen Pfad nicht finden)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileReader.<init>(FileReader.java:55)
at FilesEinlesen.<init>(FilesEinlesen.java:16)
at Hauptfenster.<init>(Hauptfenster.java:17)
at Hauptfenster.main(Hauptfenster.java:216)
 
Ja. Es liegt ja schon die ganze Zeit dadrin, aber er findet es eben doch nicht!

58-Unbenannt.JPG


Und hier nochmal der Code dazu:
Java:
	FilesEinlesen() {
		try {
			File f = new File(this.getClass().getResource("/secmon.conf").getFile());
			//File f = new File("secmon.conf");
			System.out.println(f.getAbsolutePath());
			FileReader fr1 = new FileReader(f);
			BufferedReader in1 = new BufferedReader(fr1);
			while ((db = in1.readLine()) != null) {
				if (db.contains("path")) {
					this.pfad = db.substring((db.indexOf("=")+1));
					System.out.println(this.pfad);
					break;
				}
			}
		} catch (IOException ioe) {	
			ioe.printStackTrace();
		}	
	}

Plus Fehlermeldung:
C:\Dokumente%20und%20Einstellungen\TMA\Eigene%20Dateien\Eclipse_projects\SECMONv2\bin\secmon.conf
java.io.FileNotFoundException: C:\Dokumente%20und%20Einstellungen\TMA\Eigene%20Dateien\Eclipse_projects\SECMONv2\bin\secmon.conf (Das System kann den angegebenen Pfad nicht finden)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileReader.<init>(FileReader.java:55)
at FilesEinlesen.<init>(FilesEinlesen.java:16)
at Hauptfenster.<init>(Hauptfenster.java:17)
at Hauptfenster.main(Hauptfenster.java:216)

Bitte helft mir, ich hab keine Ahnung wo das Problem liegen könnte. :-(
 
Zuletzt bearbeitet:
Alles im Default-Package!

Hab meinen Workspace in ein anderes Verzeichnis verlagert, jetzt funktionierts. -echt komisch

//EDIT: Jop, es geht. :-)
 
Zuletzt bearbeitet:
Hi,

ja danke, habs im Screenshot gesehen.
Leerzeichen scheinen ein Problem zu sein :confused:

Momentan fällt mir nix besseres ein, ist nicht schön aber sollte funktionieren.

Java:
File f = new File(this.getClass().getResource("/secmon.conf").getFile().replace("%20", " "));

Gruß
joschi
 
Hi,

so ist's vielleicht etwas sauberer:

Java:
File f = new File(URLDecoder.decode(this.getClass().getResource("/secmon.conf").getFile(), "UTF-8"));

Gruß
joschi
 
Zurück