Johnny90 Geschrieben 2. September 2009 Geschrieben 2. September 2009 Servus Ich schreibe gerade ein Java Programm, dass eine property Datei auslesen soll. Diese Property Datei wird immer in dem Ordner Dokumente und Einstellungen\Benutzer\Anwendungsdaten gespeichert. Aber auch im englischen, also Documents and Settings\User\.... Bis zum Userpfad alles kein Problem dank der System Property Userprofile. Wie könnte ich das nun aber mit dem Anwendungsdaten machen? gibt es da auch eine System Property und ich hab sie nur nicht gefunden oder wie würde man das nun am schönsten lösen? Mfg Johnny Zitieren
perdian Geschrieben 2. September 2009 Geschrieben 2. September 2009 Aber auch im englischen, also Documents and Settings\User\.... Bis zum Userpfad alles kein Problem dank der System Property Userprofile. Es gibt in Java kein System Property "Userprofile". Meinst du "user.home"? Wie könnte ich das nun aber mit dem Anwendungsdaten machen? gibt es da auch eine System Property und ich hab sie nur nicht gefunden oder wie würde man das nun am schönsten lösen?Du meinst ein System Property, was dich z.B. unter Windows zu "C:\Users\{USER}\AppData\Local" führen würde? Nein, gibt's nicht. Zitieren
Johnny90 Geschrieben 2. September 2009 Autor Geschrieben 2. September 2009 danke schonmal für die schnell Antwort ja das hab ich gemeint. ich hab das mit user.home zuerst nicht gefunden, deshalb hab ich es mit der System.getenv().get("USERPROFILE") gelöst. Hm... kann ich eventuell die Sprache des Betriebssystems abfragen? Also dass ich halt beim englischen OS den Pfad AppData angebe und beim deutschen Anwendungsdaten? mfg Johnny Zitieren
perdian Geschrieben 2. September 2009 Geschrieben 2. September 2009 (bearbeitet) @peridan: Sorry, ich hatte aus Versehen Deinen Beitrag bearbeitet und meinen eingefügt. Tut mir leid. Flashpixx: Was spricht dagegen die Daten nach "user.home" zu schreiben? Vor allen, wenn Du es als Dot-File / Dot-Ordner machst, dann wäre es auch direkt unix-konform Bearbeitet 2. September 2009 von flashpixx Ausversehen bearbeitet, anstatt zu antworten Zitieren
Johnny90 Geschrieben 2. September 2009 Autor Geschrieben 2. September 2009 dagegen spricht, dass die property datei, auf die ich zugreifen will von einem anderen programm erstellt wird. und eben genau immer in diesem verzeichnis abgelegt wird. meine kollegen benutzen aber teilweise ein englisches XP. Und dann ist natürlich der Pfad, den ich hinterlegt habe nicht mehr gleich. nun will ich halt unterscheiden ob ein englisches oder deutsches XP vorliegt und dann mit einer einfachen if-Abfrage den jeweiligen Pfad angeben. mfg Johnny Zitieren
flashpixx Geschrieben 2. September 2009 Geschrieben 2. September 2009 Du kannst mit Hilfe von JNI die Windows API ansprechen und Dir die Pfade zu den einzelnen Windows-Spezifischen Ordnern dann geben lassen. Damit bist Du dann aber nicht mehr plattform-unabhängig. Ich würde dann dazu raten, dass Du im Code entsprechend prüfst, welche Plattform vorliegt, denn selbst Windows unterscheidet hier. Du solltest dann neben Plattform auch die entsprechende Version prüfen Zitieren
perdian Geschrieben 2. September 2009 Geschrieben 2. September 2009 dagegen spricht, dass die property datei, auf die ich zugreifen will von einem anderen programm erstellt wird. [...] meine kollegen benutzen aber teilweise ein englisches XP.Von wievielen Benutzern sprechen wir? Sollte sich das ganze ine einem überschauhbaren Rahmen halten würde es sich unter Umständen lohnen das ganze hart im Code abzufragen. Alternative: Eine Properties-Datei auf dem jeweiligen Rechner, wo bei der Installation die Sprache ausgelesen wird (oder vom Benutzer das entsprechende Verzeichnis angegeben wird) und dann immer von dort gelesen wird. Vorteil: Programm ist unabhängig von der genauen Installation des Rechners, Nachteil: Eine Konfigurationsdatei mehr. Zitieren
Johnny90 Geschrieben 3. September 2009 Autor Geschrieben 3. September 2009 Servus Danke euch beiden. Ich habe mich für die Lösung von peridian entschieden, da ich sowieso schon eine properties Datei hatte und ich den Eintrag einfach noch hinzugefügt habe. Ich war mir nur erst nicht im Klaren wo überall dieses Programm eingesetzt wird. Danke nochmal :-) MfG Johnny Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.