本文实例讲述了Java实现的读取资源文件工具类ResourcesUtil。分享给大家供大家参考,具体如下:
package com.gcloud.common; import java.io.Serializable; import java.text.MessageFormat; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Locale; import java.util.ResourceBundle; import java.util.Set; /** * 资源文件读取工具类 * */ public class ResourcesUtil implements Serializable { private static final String FILENAME = "conf.messages"; private static final long serialVersionUID = -7657898714983901418L; /** * 系统语言环境,默认为中文zh */ public static final String LANGUAGE = "zh"; /** * 系统国家环境,默认为中国CN */ public static final String COUNTRY = "CN"; private static Locale getLocale() { Locale locale = new Locale(LANGUAGE, COUNTRY); return locale; } /** * 根据语言、国家、资源文件名和key名字获取资源文件值 * @param baseName 资源文件名 * @param section key名字 * @return 值 */ private static String getProperties(String baseName, String section) { try { ResourceBundle rb = ResourceBundle.getBundle(baseName, getLocale()); return (String) rb.getObject(section); } catch (Exception e) { e.printStackTrace(); } return null; } /** * 通过key从资源文件读取内容 * @param fileName 资源文件名 * @param key 索引 * @return 索引对应的内容 */ public static String getValue(String fileName, String key) { return getProperties(fileName, key); } /** * 获取默认 * @param key * @return */ public static String getValue(String key) { return getProperties(FILENAME, key); } public static ListgetKeyList(String baseName) { ResourceBundle rb = ResourceBundle.getBundle(baseName, getLocale()); List reslist = new ArrayList (); Set keyset = rb.keySet(); for (Iterator it = keyset.iterator(); it.hasNext();) { String lkey = (String) it.next(); reslist.add(lkey); } return reslist; } /** * 通过key从资源文件读取内容,并格式化 * @param fileName 资源文件名 * @param key 索引 * @param objs 格式化参数 * @return 格式化后的内容 */ public static String getValue(String fileName, String key, Object[] objs) { String pattern = getValue(fileName, key); return MessageFormat.format(pattern, objs); } public static void main(String[] args) { //908=操作成功{0}条,失败{1}条,点击查看失败信息 System.out.println(getValue("conf.messages", "908", new Object[] { 100, 200 })); } }
火柴人绳索英雄2无限金币版 (Stickman Rope Hero 2)安卓版v2.2v3.4.2
下载奥特曼之格斗超人内测版本 安卓最新版v11.0.0
下载奥特曼之格斗超人百度版 安卓版v11.0.0
下载奥特曼之格斗超人4399游戏盒版 最新安卓版v11.0.0
下载德凯奥特曼D闪光剑模拟器 安卓版v1.0
德凯奥特曼D闪光剑模拟器是一个非常有趣的奥特曼变身模拟器,可
亚刻觉醒器 安卓版v1.1
亚刻觉醒器模拟器是一个非常有趣的奥特曼变身模拟器,为喜欢亚刻
海上餐厅无限金币版 v1.0
海上餐厅免广告版是游戏的破解版本,在该版本中为玩家去除了广告
阿西美女室友竟然全解锁版 v1.0.2
阿西美女室友竟然内置菜单版是游戏的破解版本,在该版本中为玩家
我是大东家正版 最新版v1.2.738
我是大东家正版是一款放置类模拟经营手游,玩家将回到古代成为家