In unserer Anwendung erlauben wir Benutzern, Dateien und Verzeichnisse zu öffnen.Gibt es eine Möglichkeit, die 8.3 oder "kurze" (Windows) Version eines Dateinamens in Java zu generieren?
Java 6 bietet uns ...
java.awt.Desktop.getDesktop().open(file);
die großen Werke. Da wir jedoch brauchen Java 5 Kompatibilität zu gewährleisten, setzen wir auch ein Verfahren zum Öffnen von Dateien, indem Sie den Befehl start
in cmd.exe
Aufruf ...
String command = "cmd.exe start ...";
Runtime.getRuntime().exec(command);
Dies ist, wo das Problem auftaucht. Es scheint, dass der Befehl start
nur 8.3 Dateinamen verarbeiten kann, was bedeutet, dass nicht-kurze (8.3) Datei-/Verzeichnisnamen dazu führen, dass der Befehl start
fehlschlägt.
Gibt es eine einfache Möglichkeit, diese kurzen Namen zu generieren? Oder andere Problemumgehungen?
Dies hat den Trick. Vielen Dank! – thedude19
es ist eine Funktion ... lol –