Excel-Datei öffnen

Status
Nicht offen für weitere Antworten.

Alex_winf01

Top Contributor
Hallo liebe Forengemeinde,

wie kann ich aus Java heraus (Java 5) eine Excel-Datei öffnen? Derzeit probiere ich es mit:

Code:
Runtime.getRuntime().exec("test.xls");

Dabei bekomme ich folgende Fehlermeldung:

java.io.IOException: CreateProcess: text.xls error=193

Könnt ihr mir helfen? Danke schon mal im voraus.
 
Die Datei ist nicht ausführbar. Du musst irgendein Programm starten und die Datei als Parameter angeben. Mit Java 6 wäre es allerdings einfacher.
 
@ musiKk

woran liegt es dann, dass die Datei nicht ausführbar ist? Ich möchte doch nur die Datei öffnen und die Maktros ausführen? Wie geht das mit Java 5?
 
Kurz gesagt: Man kann nur Programme ausführen und nicht z. B. Excel Spreadsheets (falls ich die Endung richtig deute). Das ginge nur über Excel selbst.

Man kommt wohl auch irgendwie per Java direkt an den Inhalt der Excel-Datei, es gibt da Bibliotheken, aber dabei kann ich dir nicht helfen, damit hatte ich noch nichts zu tun.
 
Versuch es mal mit :

Code:
Runtime.getRuntime().exec( "cmd /c C:\\meineExcelDatei.xls");

Willst Du Excel lesen oder schreiben benutze Apache POI: poi.apache.org
 
@ asroger

So habe ich es auch probiert. Leider kein Erfolg. Ich möchte die Datei einfach nur öffnen, sonst nix. Die hinterlegten Makros starten beim Öffnen der Datei automatisch. :?

EDIT: Ich nutze kein POI.
 
Eben. Du willst die Datei öffnen, nicht ausführen, denn sie ist nicht ausführbar. Öffnen kannst du die Datei mit einem Programm das xls versteht, MS-Office, OpenOffice,...
Vielleicht kannst du dein Betriebssystem mit einem Befehl dazu überreden eine Datei XY mit dem verknüpften Programm zu öffnen, dazu bitte ins Handbuch schauen.
Ich bin zwar eigentlich ein Linux Anwender, würde aber behaupten, dass das Windows Programm 'start' dies kann.
 
Moin !

Unter Windows sollte die Endung xls mit Excel verknüpft sein, so dass der Aufruf:

Code:
Runtime.getRuntime().exec( "cmd /c C:\\meineExcelDatei.xls");
sich wie ein Doppelklick verhält.

Wenn nicht , bleibt Dir noch über eine Api in der Registry nach dem Installationspfad von Excel zu suchen, oder Du gibst ihn halt fest vor, wenn er auf allen Rechnern gleich ist.

API für Registry-Zugriff z. B: JRegistryKey

Ist der Pfad ermittelt dann:

Code:
Runtime.getRuntime().exec( "cmd /c pfad_zur _Excel_Exe C:\\meineExcelDatei.xls");

Gutes Gelingen
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben