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()); List reslist=newArrayList (); Set keyset=rb.keySet(); for(Iterator it=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程序设计有所帮助。