laster
Goto Top

Übergabeparameter an Java-Programm

Problem bei *.* als Parameter

Hallo,

ich möchte an ein Java-Programm den Parameter *.eml übergeben.
Die Klasse main() liefert aber schon alle EML-Dateien, statt "*.eml"
public static void main(String args) {
...
}

Aufruf: java Klasse *.eml

Im Array args sind dann alle Dateien gelistet, die dem Parameter *.eml entsprechen.
Ich will aber genau einen Eintrag: args == "*.eml"

Wie bekomme ich das hin?

Schönen Tag
LS

Content-Key: 187723

Url: https://administrator.de/contentid/187723

Printed on: April 25, 2024 at 07:04 o'clock

Member: laster
laster Jul 10, 2012 at 10:19:39 (UTC)
Goto Top
Hallo,

eine Möglichkeit ist es, den Parameter in einfache Anführungszeichen zu setzen: java Klasse '*.*'
Ist aber nicht so usability...
Gibt es nicht eine Möglichkeit, das in Java selbst zu lösen?

Gruß
LS
Member: laster
laster Jul 10, 2012 at 11:00:31 (UTC)
Goto Top
Gibt es nicht eine Möglichkeit, das in Java selbst zu lösen?
Ok, gibt es nicht, weil das OS vor dem Starten von Java schon die Dateiliste erstellt.
Is' halt so.
Habe jetzt den Parameter verändert: java Klasse -d:Dateiemaske

Gruß
LS
Member: AndreasHoster
AndreasHoster Jul 10, 2012 at 11:40:41 (UTC)
Goto Top
Das hat nichts mit Java zu tun, soweit mir bekannt ist.
Die Shell selber macht die Wildcard Expansion.
Dein Java Programm bekommt damit schon die von der Shell aufgelösten Ergebnisse.
Und damit ist es natürlich zu spät sich im Java Programm drum zu kümmern.
Member: laster
laster Jul 10, 2012 at 12:14:57 (UTC)
Goto Top
Danke AndreasHoster,

so ist es face-smile

(ich dachte, das macht nur Linux...)

Gruß
LS