⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 internationalization-resourcebundle.java

📁 RMS移动商务应用开发
💻 JAVA
字号:
/* License *  * Copyright 1994-2004 Sun Microsystems, Inc. All Rights Reserved. *  * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: *   *  * Redistribution of source code must retain the above copyright notice, *      this list of conditions and the following disclaimer. *  *  * Redistribution in binary form must reproduce the above copyright notice, *      this list of conditions and the following disclaimer in the *      documentation and/or other materials provided with the distribution. *  * Neither the name of Sun Microsystems, Inc. or the names of contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. *   * This software is provided "AS IS," without a warranty of any kind. ALL * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING * ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE * OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") * AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE * AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST * REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, * INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY * OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, * EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. *   * You acknowledge that this software is not designed, licensed or intended * for use in the design, construction, operation or maintenance of any * nuclear facility.  */import java.util.Hashtable;public class ResourceBundle {  private static Hashtable groups = new Hashtable();  public static Object getObject( String group, String                                               key ) {    ResourceBundle bundle;    synchronized( groups ){      bundle = (ResourceBundle) groups.get( group );      if( bundle == null ){        bundle = loadBundle( group );      }    }    return bundle.getResource( key );  }  public static String getString( String group, String                                               key ) {        return (String) getObject( group, key );  }  public static ResourceBundle loadBundle( String                                            name ) {    ResourceBundle bundle = null;    Locale         locale = Locale.getDefaultLocale();    String         language = locale.getLanguage();    String         country = locale.getCountry();    try {        bundle = (ResourceBundle)                   Class.forName( name ).newInstance();    }    catch( Exception e ){    }    if( language != null ){      ResourceBundle child;      try {        child = (ResourceBundle) Class.forName(                              name + '_' + language                                    ).newInstance();        child.setParent( bundle );        bundle = child;      }      catch( Exception e ){      }      if( country != null ){        try {          child = (ResourceBundle) Class.forName(                           name + '_' + language +                           '_' + country                           ).newInstance();          child.setParent( bundle );          bundle = child;        }         catch( Exception e ){         }       }     }     if( bundle == null ){       bundle = new ResourceBundle();     }     groups.put( name, bundle );     return bundle;  }  protected Hashtable resources = new Hashtable();  private   ResourceBundle parent;  protected ResourceBundle() {  }  protected void setParent( ResourceBundle parent ) {    this.parent = parent;  }  protected Object getResource( String key ) {    Object obj = null;    if( resources != null ){      obj = resources.get( key );    }    if( obj == null && parent != null ){      obj = parent.getResource( key );    }    return obj;  }  public static class Locale {    private String language = "en";    private String country = "US";    public Locale( String language, String country ) {      this.language = language;      this.country = country;    }    public Locale( String locale ) {      if( locale != null ){        int pos = locale.indexOf( '-' );        if( pos != -1 ){          language = locale.substring( 0, pos );          locale = locale.substring( pos+1 );          pos = locale.indexOf( '-' );          if( pos == -1 ){            country = locale;          } else {            country = locale.substring( 0, pos );          }        }      }    }    public String getLanguage() {      return language;    }    public String getCountry() {      return country;    }    private static Locale defaultLocale = new                  Locale( System.getProperty(                   "microedition.locale" ) );    public static Locale getDefaultLocale() {      return defaultLocale;    }    public static void setDefaultLocale( Locale                                     locale ) {      defaultLocale = locale;    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -