// messages.hello.properties

id=001

name=惜缘

love=I think,therefor i am.

friends=Hi! {0} and {1} ,how are you?

// org.PropertiesUtil.java

package org;

import java.io.UnsupportedEncodingException;

import java.text.MessageFormat;

import java.util.Locale;

import java.util.MissingResourceException;

import java.util.ResourceBundle;

public class PropertiesUtil {

private static String encoding = "UTF-8";

/**

* read the message with key from the resource bundle

* @param bundlePath

* @param key

* @return

*/

public static String getString(String bundlePath,String key){

return getString(bundlePath,key,null);

}

/**

* read the message with key from the resource bundle

* @param bundlePath

* @param key

* @param args

* @return

*/

public static String getString(String bundlePath,String key,Object[] args){

// we will throw a MessingResourceException if the bundle name is invalid

ResourceBundle bundle = getBundle(bundlePath);

try{

String msg = bundle.getString(key);

if(msg == null){

return "";

}

// change the message encoding

msg = convertISO(msg);

return msg = MessageFormat.format(msg, args);

} catch(MissingResourceException e){

return "";

}

}

/**

* get ResourceBundle with bundlePath

* @param bundlePath

* @return

* @throws MissingResourceException if resource is messing

*/

private static ResourceBundle getBundle(String bundlePath){

Locale locale = Locale.getDefault();

ResourceBundle bundle = ResourceBundle.getBundle(bundlePath,locale,getClassLoader());

return bundle;

}

/**

* get the current ClassLoader

* @return

*/

protected static ClassLoader getClassLoader(){

return PropertiesUtil.class.getClassLoader();

}

/**

* convert msg encoding

* @param msg

* @return

*/

public static String convertISO(String msg){

if(msg != null){

try{

return new String(msg.getBytes("iso-8859-1"),getEncoding());

} catch(

JAVa读取文件的附加属性,Java 读取属性文件相关推荐

  1. 使用PropertyPlaceholderConfigurer读取属性文件

    1.简介 通常,当我们考虑将多个应用程序部署到生产环境之前在其中部署服务器时,可以在外部属性文件中配置特定于环境的参数 . 它可能是数据库详细信息,对于测试服务器和生产服务器而言,这是不同的. 因此最 ...

  2. java.policy无法修改_如何配置Policy文件进行Java安全策略的设置

    中国人最喜欢访问的网站 只要注册ofo就送你10块钱,还等什么,快来注册吧 Java语言具有完善的安全框架,从编程语言.编译器.解释程序到Java虚拟机,都能确保Java系统不被恶意的代码或敌对的编译 ...

  3. java 判断是否为cst格式_Java判断文件编码格式

    1:简单判断是UTF-8或不是UTF-8,因为一般除了UTF-8之外就是GBK,所以就设置默认为GBK. 按照给定的字符集存储文件时,在文件的最开头的三个字节中就有可能存储着编码信息,所以,基本的原理 ...

  4. Spring-使用外部属性文件01

    导读 概述 PropertyPlaceholderConfigurer属性文件 实例 使用PropertyPlaceholderConfigurer属性文件 PropertyPlacerholderC ...

  5. JavaXml教程(十)XML作为属性文件使用

    我们通常会将Java应用的配置参数保存在属性文件中,Java应用的属性文件可以是一个正常的基于key-value对,以properties为扩展名的文件,也可以是XML文件. 在本案例中,將会向大家介 ...

  6. 加载oracle属性文件,关于属性文件的详细介绍

    我们通常会将Java应用的配置参数保存在属性文件中,Java应用的属性文件可以是一个正常的基于key-value对,以properties为扩展名的文件,也可以是XML文件. 在本案例中,將会向大家介 ...

  7. Java高级用户指南-核心Java

    原文地址:https://dzone.com/refcardz/core-java 本文采用Google翻译,有些地方数据类型被翻译成了中文,建议中英文对照一起看. 第1节 关于Core Java 此 ...

  8. Spring Boot和多模块项目–添加模块特定的属性文件

    你好! 在本文中,我将向您展示几种如何在Spring Boot项目中添加模块特定的属性文件的方法. 它将介绍使属性文件可识别配置文件的手动方法以及可识别配置文件的半自动方法. 我的Github帐户上发 ...

  9. 关于单体化和属性文件的说明

    关于单体化 单体化效果做出来也有段时间了,可能还是有些问题没有讲清楚,我们这里再说下 单体化矢量的制作 单体化的原理就是一个通过矢量文件构造一个个封闭的几何体去附着到被分类的对象(倾斜或者地形),所以 ...

最新文章

  1. Git的使用---版本控制
  2. android数据库格式化,正确格式化SQLite SQL语句
  3. 【bzoj5427】最长上升子序列(贪心+LIS)
  4. 记sentinel里防止多并发下读取脏数据的操作
  5. RTMPdump(libRTMP) 源代码分析 7: 建立一个流媒体连接 (NetStream部分 2)
  6. codeforces 650B - Image Preview
  7. 哈希表(散列表)基础概念与经典题目(Leetcode题解-Python语言)之上——原理与设计
  8. SpringBoot 中的事务处理 @Transactional
  9. exports,和module.exports 的区别
  10. vnpy软件架构分析
  11. ORACLE修改表信息
  12. MySQL数据库反向生成powerdesigner模型
  13. 39. Use private inheritance judiciously
  14. termux安装python2_termux怎么安装python
  15. Struts2框架 下载和配置
  16. 程序员小抄——GitHub 热点速览 Vol.44
  17. 程序员们的“钢铁审美”:花花公子封面女郎如何成为互联网第一夫人?
  18. 【Spark重点难点】你的数据存在哪了?
  19. mysql删除分表键_一文看懂 MySQL 分区和分表,提高表增删改查效率
  20. 微信自定义菜单和个性化菜单添加emoji表情(兼容ios和安卓,防止小方框)

热门文章

  1. python3多进程 pool manager_python多进程multiprocessing Pool相关问题
  2. Spring Boot 配置中的敏感信息如何保护?
  3. 皮一皮:多少人的爱情在昨天就像他一样...
  4. 皮一皮:盖茨这婚离的是多土豪...
  5. 每日一皮:晕,程序重新请求一下,结果还不一样了!
  6. 2020 年,Linux 设备或将爆炸式增长
  7. linux 占用cpu 脚本,消耗CPU资源的shell脚本
  8. win10 tensorrt安装 踩坑记录
  9. AndroidStudio SSL peer shut down incorrectly
  10. torch.cuda.is_available()返回false