properties配置文件中文乱码解决方法
方法1 properties文件的格式一般为:
- ROOT=http://localhost:8080/BNCAR2/
- ROOTPATH=E:/ws2/BNCAR2/rel/
- MALL_PARTS_PATH=mall.jsp?rowid=0&typeFlag=0&pid=32
- MALL_AFFIX_PATH=mall.jsp?rowid=0&typeFlag=1&pid=74
- MALL_TYPE_TAG1=保养套装
- MALL_TYPE_TAG2=系统养护
- MALL_TYPE_TAG3=轮胎轮毂
- NETWORK_TAG1=上海
- NETWORK_TAG2=江苏
以上为保存UTF-8格式,使用UltraEdit编辑,避免出现空格导致转码错误。(在文本编辑器中有时候空格看不出来,这就是看似中文对了,实际转码会存在非法字符的原因了~!!)
java中获取配件文件信息,PropUtil.java
- static Properties config = null;
- static String filename = PropUtil.class.getClassLoader().getResource("bn-context.properties").getFile();
- static Logger log = Logger.getLogger(PropUtil.class);
- public PropUtil() {
- super();
- config = getPropUtil();
- }
- public static Properties getPropUtil() {
- config = new Properties();
- InputStream is = null;
- try {
- //ln("初始化config对象!");
- is = PropUtil.class.getClassLoader().getResourceAsStream(
- "bn-context-test.properties");
- config.load(is);
- } catch (IOException e) {
- e.printStackTrace();
- } finally {// 关闭资源
- if (is != null) {
- try {
- is.close();
- } catch (IOException e) {
- }
- }
- }
- return config;
- }
- public static String getParameter(String key) {
- if(config == null){
- config = getPropUtil();
- }
- String value = config.getProperty(key);
- // 编码转换,从ISO8859-1转向指定编码
- try {
- if(value != null){
- value = new String(value.getBytes("ISO8859-1"), "UTF-8");
- }
- } catch (UnsupportedEncodingException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return value;
- }
- public static void setParameter(String key,String value) {
- if(config == null){
- config = getPropUtil();
- }
- config.setProperty(key, value);
- }
方法2 用UltraEdit编辑器,编写中文配置文件bn-context-test.properties,在保存后再点击另存为,文件名为prop.properties,编码选择unicode ascii就可以了。
- ROOT=http://localhost:8080/BNCAR2/
- ROOTPATH=E:/ws2/BNCAR2/rel/
- MALL_PARTS_PATH=mall.jsp?rowid=0&typeFlag=0&pid=32
- MALL_AFFIX_PATH=mall.jsp?rowid=0&typeFlag=1&pid=74
- MALL_TYPE_TAG1=\u4FDD\u517B\u5957\u88C5
- MALL_TYPE_TAG2=\u7CFB\u7EDF\u517B\u62A4
- MALL_TYPE_TAG3=\u8F6E\u80CE\u8F6E\u6BC2
- NETWORK_TAG1=\u4E0A\u6D77
- NETWORK_TAG2=\u6C5F\u82CF
如果这种情况,以上java代码就不需要转码那部分代码,注释掉。
- // 编码转换,从ISO8859-1转向指定编码
- // try {
- // if(value != null){
- // value = new String(value.getBytes("ISO8859-1"), "UTF-8");
- // }
- // } catch (UnsupportedEncodingException e) {
- // // TODO Auto-generated catch block
- // e.printStackTrace();
- // }
properties配置文件中文乱码解决方法的更多相关文章
- Eclipse的properties文件中文乱码解决方法
转自:http://jingyan.baidu.com/article/ed2a5d1f3381d709f6be17f8.html 打开Myeclipse,找到window这一栏,点击Preferen ...
- eclipse下properties配置文件中文乱码解决
properties文件常带有中文注释,eclipse显示是乱码. 安装插件(properties editor)可以解决properties配置文件乱码的问题. 菜单 : Help->Ecli ...
- Java 前台后台数据传递、中文乱码解决方法
1.向前台传递数据;2.向后台传递数据;3.ajax post 提交数据到服务端时中文乱码解决方法;4.数组类型参数传递; 1.向前台传递数据:1.1 字符串数据传递: 这种方式只是单一的向前台传递 ...
- centos7 中文乱码解决方法
centos7 中文乱码解决方法 标签(空格分隔): centos7 1.查看安装中文包: 查看系统是否安装中文语言包 (列出所有可用的公共语言环境的名称,包含有zh_CN) # locale -a ...
- php mysql 中文乱码解决方法
本文章向码农们介绍php mysql 中文乱码解决方法,对码农们非常实用,需要的码农可以参考一下. 从MySQL 4.1开始引入多语言的支持,但是用PHP插入的中文会出现乱码.无论用什么编码也不行 解 ...
- jquery的ajax()函数传值中文乱码解决方法介绍
jquery的ajax()函数传值中文乱码解决方法介绍,需要的朋友可以参考下 代码如下: $.ajax({ dataType : ‘json', type : ‘POST', url : ‘http: ...
- [转]mysql导入导出数据中文乱码解决方法小结
本文章总结了mysql导入导出数据中文乱码解决方法,出现中文乱码一般情况是导入导入时编码的设置问题,我们只要把编码调整一致即可解决此方法,下面是搜索到的一些方法总结,方便需要的朋友. linux系统中 ...
- Zxing中文乱码解决方法
Zxing中文乱码解决方法总结 尝试过非常多方法 最后发现此方法解决的乱码最多....... 在百度搜索二维码图片 经过前2页的測试 除开一张图之外 其余都能扫描出结果 假设大家有更好的解决方法 ...
- unity3d 中文乱码解决方法——cs代码文件格式批量转化UTF8
在Unity3d中经常会碰到中文乱码的问题,比如代码中的[AddComponentMenu("GameDef/AI/战机AI")],注释,中文文本等等 其原因在于,unity本身是 ...
随机推荐
- 《JS高级程序设计》笔记 —— 解析查询字符串
今天在继续翻阅<JS高级程序设计>的时候,正好翻到location对象这一小节,其中有一部分就是讲的解析查询字符串.看到这个内容立马想到了做去哪儿秋招笔试题的时候有这么一道题. 去哪儿笔试 ...
- jquery实现2级联动
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 笔试面试题-小米Git
题目描述: git是一种分布式代码管理工具,git通过树的形式记录文件的更改历史,比如: base'<--base<--A<--A' ^ | --- B<--B' 小米工程师常 ...
- GDB 进行调试 使用心得
GDB 进行调试 使用心得 转 1: 对于在应用程序中加入参数进行调试的方法: 直接用 gdb app -p1 -p2 这样进行调试是不行的. 需要像以下这样使用: #gdb app ...
- System.UnauthorizedAccessException: 拒绝访问 temp 目录。用来运行 XmlSerializer 的标识“NT AUTHORITY\NETWORK SERVICE”没有访问 temp 目录的足够权限。CodeDom 将使用进程正在使用的用户帐户进行编译,这样,如
解决方案:IIS的应用程序池权限不够,应用程序给localsystem账号权限即可. 以客户的服务器系统2003sp2为例,修改步骤如下: 控制面板---管理工具--Internet 信息服务(IIS ...
- Sublime Text 3 使用备注
去年开始为了正规化自己的日常编辑工作,在dw,editplus,notap++,st里做了个选择,最终决定改曾经的dw为st. 毕竟dw是上个世纪的东西了,体积比较臃肿了.所以,在这里记录关于st的使 ...
- PHPNow升级PHP版本的方法
在WIN上有时候需要测试一些PHP程序,又不会自行独立配置环境,那么PHPNow是非常好的选择. PHPNow自带的PHP版本为5.2.14,而最后一次更新在于2010-9-22,PHP5.2对于现在 ...
- php中封装的curl函数(抓取数据)
介绍一个封闭好的函数,封闭了curl函数的常用步骤,方便抓取数据. 代码如下: <?php /** * 封闭好的 curl函数 * 用途:抓取数据 * edit by www.jbxue.com ...
- (转载)直接用SQL语句把DBF导入SQLServer
告诉大家一个直接用SQL语句把DBF导入SQLServer,以及txt导入Access的方法,大家抛弃BatchMove吧来自:碧血剑告诉你一个最快的方法,用SQLServer连接DBF在SQLSer ...
- c语言指针说解
一. 指针定义 1指针的意义 2指针的赋值 指针变量同普通变量一样,使用之前不仅要定义说明, 而且必须赋予具体的值.未经赋值的指针变量不能使用, 否则将造成系统混乱. #include <std ...