Hallo,
ich habe grade folgendes Problem:
Ich lege eine neue datei an und schreibe den Inhalt rein.
Danach will ich die Datei öffnen und dann kommt immer die Exception:
java.io.IOException: Failed to open file:/D://temp.doc. Error message: Das System kann den angegebenen Pfad nicht finden.
at sun.awt.windows.WDesktopPeer.ShellExecute(Unknown Source)
at sun.awt.windows.WDesktopPeer.open(Unknown Source)
......
Die Codestelle die den Fehler verursacht steht unten.
Was mich daran verwundert:
Der Dateiname und die Dateigröße wird vorher richtig ausgegeben.
und ich prüfe auch vorher mit exists() oder auch canExecute()
UND die Datei wird korrekt erstellt und befüllt, von Hand lässt sie sich wunderbar öffnen.
Die Datei hat auch keine bestimmten Schreib/Leserechte oder sonstwas.
Trotzdem ständig diese Fehlermeldung.
Dieser Fehler tritt allerdings nur auf, wenn ich das Programm als Jar starte, in Eclipse funzt das wunderbar.
Jemand ne Idee?
ich habe grade folgendes Problem:
Ich lege eine neue datei an und schreibe den Inhalt rein.
Danach will ich die Datei öffnen und dann kommt immer die Exception:
java.io.IOException: Failed to open file:/D://temp.doc. Error message: Das System kann den angegebenen Pfad nicht finden.
at sun.awt.windows.WDesktopPeer.ShellExecute(Unknown Source)
at sun.awt.windows.WDesktopPeer.open(Unknown Source)
......
Die Codestelle die den Fehler verursacht steht unten.
Was mich daran verwundert:
Der Dateiname und die Dateigröße wird vorher richtig ausgegeben.
und ich prüfe auch vorher mit exists() oder auch canExecute()
UND die Datei wird korrekt erstellt und befüllt, von Hand lässt sie sich wunderbar öffnen.
Die Datei hat auch keine bestimmten Schreib/Leserechte oder sonstwas.
Trotzdem ständig diese Fehlermeldung.
Dieser Fehler tritt allerdings nur auf, wenn ich das Programm als Jar starte, in Eclipse funzt das wunderbar.
Jemand ne Idee?
Code:
BufferedWriter bw = null;
File vorlage = null;
try {
vorlage = new File("temp.doc");
bw = new BufferedWriter (new FileWriter(vorlage));
bw.write(text);
bw.flush();
bw.close();
System.out.println(vorlage + ", " + vorlage.length()); // liefert -> temp.doc, 24805
if(vorlage.exists())
Desktop.getDesktop().open(vorlage); //<---- Exception
} catch (IOException e) {
JOptionPane.showConfirmDialog(null, e.getMessage(),"Fehler", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE);
e.printStackTrace();
}