Java类中国际化的读取

/**
*
* 国际化文件的读取
* <功能详细描述>
* @author zengqiang
* @version [版本号, 2009-8-18]
* @see [相关类/方法]
*/
public class Internationalization
{
private static Map<String, String> languageMap = new HashMap<String, String>();

private static String PATH = null;

/**
* 初始化PATH
*/
@SuppressWarnings("static-access")
public Internationalization(String projectName)
{
this.PATH =
PortalHelper.getInstance().getURL("dpf_dms") == null ? System.getProperty("catalina.home")
+ File.separatorChar + "webapps" + projectName + File.separatorChar + "WEB-INF" + File.separatorChar
+ "classes" + File.separatorChar : PortalHelper.getInstance().getURL("dpf_dms") + File.separatorChar
+ "WEB-INF" + File.separatorChar + "classes" + File.separatorChar;
}

/** 读取国际化文件
* @param language 语种
* @throws IOException
*/
public static String getProperties(String language, String key)
throws IOException
{
DebugLogger.inf("getProperties method param language:" + language + " param key:" + key);
if (null != languageMap.get("language"))
{
if (language.equals(languageMap.put("language", language)))
{
Properties propertys;
try
{
propertys = Tools.loadProperties(PATH + "dpf_" + language + ".properties");
if (null != key)
{
return propertys.getProperty(key);
}
}
catch (InitException e1)
{
DebugLogger.err("loadProperties to Exception", e1);
e1.printStackTrace();
}
}
else
{
languageMap.put("language", language);
}
}
else
{
languageMap.put("language", language);
}
return null;
}
/**
* 根据国际化名称得到值
*/
public static String getProperty(String key)
{
DebugLogger.inf("getProperty method param key:" + key);
try
{
return getProperties(languageMap.get("language"), key);
}
catch (IOException e)
{
DebugLogger.err("getProperty to Exception", e);
e.printStackTrace();
}
return "Key_Error";
}
}
public final class Tools{
public static Properties loadProperties(String fileURL)
throws InitException
{
Properties prop = new Properties();
FileInputStream in = null;
try
{
File f = new File(fileURL);
if (!f.exists())
{
throw new InitException("Can't find properties file from URL [" + f.getAbsolutePath() + "].");
}
in = new FileInputStream(f);
prop.load(in);
}
catch (IOException e)
{

}
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值