package kalender; import java.util.*; import java.text.*; public class Sprogdata { private Locale sprog = Locale.getDefault(); private ResourceBundle tekster; private Bruger bruger; public void setLocale(Locale sproget) { sprog = sproget; tekster = ResourceBundle.getBundle("kalendertekster",sprog); bruger.setLocale(sprog); } public void setBruger(Bruger brugerobjekt) { bruger = brugerobjekt; bruger.setLocale(sprog); } public void setSprog(String sproget) { String[] s = sproget.split("_"); if (s.length==1) setLocale(new Locale(sproget)); else if (s.length==2) setLocale(new Locale(s[0],s[1])); else setLocale(new Locale(s[0],s[1],s[2])); } /** Oversæt en tekst (slå op i det relevante resursebundt) */ public String ovs(String nøgle) { try { return tekster.getString(nøgle); } catch (MissingResourceException e) { System.err.println("Advarsel: Manglende resurse i kalendertekster:\n" + nøgle.replaceAll("[\\p{Punct}\\s]+","_") // erstat andre tegn med _ + "=" + nøgle.replaceAll("[\r\n]","\\\n") ); return nøgle; } } }