Java实现的读取资源文件工具类ResourcesUtil实例【可动态更改值的内容】

网友投稿 287 2023-03-22


Java实现的读取资源文件工具类ResourcesUtil实例【可动态更改值的内容】

本文实例讲述了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 sJOkaOxYbtatic 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 List getKeyList(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(JOkaOxYb"conf.messages", "908", new Object[] { 100, 200 }));

}

}

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java文件与目录操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Servlet实现简单文件上传功能
下一篇:微信小程序 input输入及动态设置按钮的实现
相关文章

 发表评论

暂时没有评论,来抢沙发吧~