Java实现的读取资源文件工具类ResourcesUtil实例【可动态更改值的内容】
本文实例讲述了Java实现的读取资源文件工具类ResourcesUtil。分享给大家供大家参考,具体如下:
packagecom.gcloud.common;
importjava.io.Serializable;
importjava.text.MessageFormat;
importjava.util.ArrayList;
importjava.util.Iterator;
importjava.util.List;
importjava.util.Locale;
importjava.util.ResourceBundle;
importjava.util.Set;
/**
*资源文件读取工具类
*
*/
publicclassResourcesUtilimplementsSerializable{
privatestaticfinalStringFILENAME="conf.messages";
privatestaticfinallongserialVersionUID=-7657898714983901418L;
/**
*系统语言环境,默认为中文zh
*/
publicstaticfinalStringLANGUAGE="zh";
/**
*系统国家环境,默认为中国CN
*/
publicstaticfinalStringCOUNTRY="CN";
privatestaticLocalegetLocale(){
Localelocale=newLocale(LANGUAGE,COUNTRY);
returnlocale;
}
/**
*根据语言、国家、资源文件名和key名字获取资源文件值
*@parambaseName资源文件名
*@paramsectionkey名字
*@return值
*/
privatestaticStringgetProperties(StringbaseName,Stringsection){
try{
ResourceBundlerb=ResourceBundle.getBundle(baseName,getLocale());
return(String)rb.getObject(section);
}catch(Exceptione){
e.printStackTrace();
}
returnnull;
}
/**
*通过key从资源文件读取内容
*@paramfileName资源文件名
*@paramkey索引
*@return索引对应的内容
*/
publicstaticStringgetValue(StringfileName,Stringkey){
returngetProperties(fileName,key);
}
/**
*获取默认
*@paramkey
*@return
*/
publicstaticStringgetValue(Stringkey){
returngetProperties(FILENAME,key);
}
publicstaticListgetKeyList(StringbaseName){
ResourceBundlerb=ResourceBundle.getBundle(baseName,getLocale());
Listreslist=newArrayList();
Setkeyset=rb.keySet();
for(Iteratorit=keyset.iterator();it.hasNext();){
Stringlkey=(String)it.next();
reslist.add(lkey);
}
returnreslist;
}
/**
*通过key从资源文件读取内容,并格式化
*@paramfileName资源文件名
*@paramkey索引
*@paramobjs格式化参数
*@return格式化后的内容
*/
publicstaticStringgetValue(StringfileName,Stringkey,Object[]objs){
Stringpattern=getValue(fileName,key);
returnMessageFormat.format(pattern,objs);
}
publicstaticvoidmain(String[]args){
//908=操作成功{0}条,失败{1}条,点击查看失败信息
System.out.println(getValue("conf.messages","908",newObject[]{100,200}));
}
}
更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java文件与目录操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短