Ein paar Fragen zu .properties und .css

White_Fox

Top Contributor
Guten Abend allerseits

Frage: Ich würde .css- und .properties-Dateien gerne außerhalb der Javapakete speichern. Dies deswegen, damit andere Programmnutzer diese einfach nach ihren Bedürfnissen anpassen können und so z.B. das Programm einfach übersetzen können. Ich will dem Nutzer dabei den Aufwand ersparen, sich erst mit dem Programm und Werkzeugen wie einer IDE auseinandersetzen zu müssen. Ja, geht auch ohne IDE, aber das macht es Leuten die keine Ahnung von Java und Programmierung haben ja nicht leichter.

Ich stelle mir vor, einfach zwei zusätzliche Ordner im Installationsverzeichnis zu haben, in denen css-Dateien oder properties-Dateien liegen. Ich prüfe beim Programmstart, welche Sprachen/css verfügbar sind. Wenn ein Benutzer also z.B. einfach eine weitere .properties-Datei in den entsprechenden Ordner ablegt, hat er beim nächsten Programmstart eine weitere Sprache im Einstellungsmenü zur Auswahl.

Speziell noch etwas zu .properties-Dateien: Gibt es eine Möglichkeit, sich die zugehörige Sprache in der jeweiligen Landessprache ausgeben zu lassen? Also z.B.: Deutsch, English, русский, ...

Geht das?
 
Hm...hat niemand eine Idee?

Die Beispiele/Hinweise, die ich bisher fand, funktionieren bei mir leider nicht bw. nur unzureichend da localeabhängig.
 
Ich will die Dateien aus einem Unterordner 'lng' laden, aber das wirft mir immer wieder eine Exception "java.util.MissingResourceException: Can't find bundle for base name".

Ich habe es probeweise auch mit einem anderen Unterordner und absoluten Pfaden versucht, aber das hat auch nicht mehr gebracht.
 
Java:
public class View implements ModelObservable, ViewdataControllable, ViewsControllerLinkable {

    private ResourceBundle textResourceBundle;
   
    public View(ModelsViewLinkable model, ControllersViewLinkable controller) {

            //Load text strings
            this.textResourceBundle = ResourceBundle.getBundle(Statics.textPropertyfile);  //Exception hier

            //...
    }
}


public class Statics {

    //public final static String textPropertyfile = "main.view.text";      //Das funktioniert
    public final static String textPropertyfile = "..\\lng\\text";        //Das nicht
}

Die Pfade habe ich in den verschiedensten Varianten durchprobiert...auch mit absolutem Pfad funktioniert das nicht.
 

Zurück
Oben