FileNotFoundException

Status
Nicht offen für weitere Antworten.

tigerlily

Mitglied
Hallo an alle,

ich habe ein Problemchen und zwar möchte ich gerne ein neues File anlegen zum Programmstart. Der Name des neuen .txt Dokumentes setzte sich aus Tagesdatum+Uhrzeit zusammen. Sobald ich mein Programm starte wird keine .txt Datei erstellt. Also habe ich das ganze mal im debug Modus zu Gemüte geführt. Und siehe da ich erhalte eine Exception der Klasse java.io

Code:
java.io.FileNotFoundException: D:\Entwicklung\Entwicklung_System\1311200912:34:53.txt 
(Falscher Parameter)

Hier mal mein JavaCode:

Code:
		Properties prop = new Properties();
		
		Properties sysProperties = System.getProperties();
		
              //In der system.ini liegen Pfad angaben
		String Verzeichnis = sysProperties.getProperty("user.dir");
		String Datei = "\\system.ini";
		

               //Holen der system.ini
		File iniFile = new File(Verzeichnis+Datei);

		try{
			FileInputStream fis = new FileInputStream(iniFile);
			prop.load(fis);
			fis.close();
			
			Collection keys = prop.keySet();
			Collection values = prop.values();
			
			Iterator ikeys = keys.iterator();
			Iterator ivalues = values.iterator();
			
			while(ikeys.hasNext())
			{
				prop.setProperty(ikeys.next().toString(),ivalues.next().toString());
			}
		}catch(FileNotFoundException e)
		{
			e.printStackTrace();
		}catch (IOException e1){
			e1.printStackTrace();
		}

               PfadAdress = prop.getProperty("PfadAdress");

               //Uhrzeit festlegen
               	Date now = new Date();
                SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
               Uhrzeit = formatter.format(now);


              //Datum anlegen
                Date now2 = new Date();
               SimpleDateFormat formatter2 = new SimpleDateFormat("ddMMyyyy");
               String dateStr = formatter2.format(now2);
  
               //Neues File anlegen
               file = new File(PfadAdress +"\\"+dateStr+Uhrzeit+".txt");

              //in File schreiben
               try {
			BufferedWriter out2 = new BufferedWriter(new FileWriter(file));
			out2.write("!Adresse ungleich!"+System.getProperty("line.separator"));
			out2.close();
		} catch (IOException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}


Hmmm, wieso bekomme ich die Meldung falscher Parameter? Mag Java die : nicht oder stimmt sonst etwas an der Pfadangabe nicht? In der Variablen file steht: D:\\Entwicklung\\Entwicklung_System\\1311200912:34:53.txt

:bahnhof::rtfm:

Gruß

tigerlily
 
Zuletzt bearbeitet:

diggaa1984

Top Contributor
ein File mittels new erzeugen heisst noch nicht, das es auch auf der Festplatte erzeugt wird, dazu gibts dann
boolean createNewFile()
Atomically creates a new, empty file named by this abstract pathname if and only if a file with this name does not yet exist.
 

Michael...

Top Contributor
Wenn man eine neue Datei erstellen und beschreiben will, muss man diese erst erstellen:
Java:
file.createNewFile();
 

tigerlily

Mitglied
Hallo,

danke für die Information das wusste ich nicht. Dachte new File legt direkt auch das File an.

Habe dies nun geändert.
Code:
file = new File(PfadAdress +"\\"+dateStr+Uhrzeit+".txt");
file.createNewFile();


Trotzdem erhalte ich wieder Exceptions.
Eine beim anlegen des File:

Code:
java.io.IOException: Falscher Parameter

und diese Meldung wieder beim versuch diese zu beschreiben:

Code:
java.io.FileNotFoundException: D:\Entwicklung\Entwicklung_System\1311200912:34:53.txt 
 (Falscher Parameter)

gruß

tigerlily
 

tigerlily

Mitglied
Hi,

@diggaa1984: danke dir vielmals das war des Rätsels Lösung :toll:

@Michael.: danke dir auch für deine Tipps.

Tja manchmal geht es doch einfach als man(oder in diesem Fall "Frau") denkt.

gruß

und nochmals thx

tigerilly
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben