Announcement

Collapse
No announcement yet.

Umgebungsvariablen abfragen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Umgebungsvariablen abfragen

    Ich suche eine Möglichkeit Dateinamen (String) die %NAME% oder $NAME beinhalten in gültige Dateinamen umzuwandeln.
    Gibt es eine Möglichkeit auf die Umgebungsvariablen zuzugreifen ohne die Ausgabe des Kommandos SET in eine Datei zu pipen und aus dieser auszulesen?

    mfg martin

  • #2
    Hi,
    <p>In der klasse System gibt es die statische methode: static String getProperty(String key) die dir den inhalt der übergebenen systemvaribalen zurück gibt.
    <p><code>System.out.println("Inhalt: " + System.getProperty("name"));</code></P><br>Gruss Rico</p&gt

    Comment


    • #3
      Danke, aber das sind nicht die Umgebungsvariablen des Systems.
      Man kann zwar viele Umgebungsvariablen (zB.: OS-Name, VM-Version, Username, Userdirectory, etc.) abrufen, jedoch nicht die Umgebungsvariablen wie %NAME% oder $NAME. Hab das schon probiert und null zurückbekommen. Bräuchte also eine Möglichkeit wie ich diese abrufen kann - danke trotzdem.

      mfg, marti

      Comment


      • #4
        Java kennt an sich keine Umgebungsvariablen, die SystemProperties sind der plattform-unabhaengige Ansatz, solche aehnlichen Konstrukte anzubieten. Wenn Du waehrend der Laufzeit der Java-Umgebung _wirklich_ auf System-Variablen angewiesen bist, brauchst Du Konstrukte wie ein System.exec("set") und den Output parsen. Ansonsten macht es mehr Sinn, einen systemspezifischen Launcher fuer Dein Programm zu schreiben, oder gleich mit vernuenftigen Parametern zu arbeiten (java MeineKlasse NAME), statt ueber Variablen zu arbeiten.<p>
        Beschreib einfach, wozu Du das brauchst, und wir machen uns Gedanken, wie man das auch ohne Variablen loesen kann.<p>
        Gruss, Marc

        Comment


        • #5
          Danke für die Information
          Ich muss derzeit eine Klasse entwickeln welche diverse File-Operationen systemunabhängig durchführt. Dieser Klasse sollen für die Funktionen auch Strings übergeben werden die eben %NAME% (Windows) oder $NAME (unter Unix/Solaris) enthalten können. Eine Funktion <I>public String clrName(String filename)</I>
          soll eben die Dateinamen und gültige Dateinamen umsetzen.

          Wenn es nur mit dem Parsen des Outputs funktioniert bleibt mir ja sowieso keine andere Lösung als entweder einen kleinen Script zu schreiben der mir das zur Verfügung stellt bzw im Programm selbst die Ausgabe vom Systembefehl SET zu verwenden.

          Danke im Vorraus für jede Hilfe.
          mfg marti

          Comment

          Working...
          X