`
nbtlxx
  • 浏览: 253872 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

java.util.Properties 乱码问题解决方案

阅读更多
今天碰到一个乱码问题,很是奇怪。
小弟做了个system.properties文件
包含简单的配置属性, 但是每次读取出来中文乱码。
后来查看了资料才知道Properties默认的字符串是ISO8859-1。
解决办法:
将获取的字符串,重新构造一个基于UTF-8的字符串。

str = new String(value.getBytes("ISO8859-1"), "UTF-8");

下面是具体代码。

searchServerIp=localhost
searchServerPort=8889
serverTitle=基于Lucene在线客服软件Beta 1.0|Server
clientTitle=基于Lucene在线客服软件Beta 1.0|Client
firstTime=1000
period=1000*60*30


/**
 * 
 */
package net.tuolian.product.utils;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Properties;

/**
 * @author sean
 * 
 *         系统配置类 读取配置文件
 * 
 */
public class Config {
	public static Config instance;
	static Properties prop;

	private Config() {
		prop = new Properties();
		try {
			prop.load(new FileInputStream("system.properties"));
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	/**
	 * 单例模式
	 * 
	 * @return
	 */
	public static Config newInstance() {
		if (instance == null) {
			instance = new Config();
		}
		return instance;
	}

	/**
	 * 
	 * @param key
	 * @return
	 */
	public static String getProperty(String key) {
		if(instance == null){
			instance = Config.newInstance();
		}
		
		if (key == null) {
			return null;
		}
		
		String value = prop.getProperty(key);
		String str = null;
		try {
			//进行编码转换,解决问题
                   str = new String(value.getBytes("ISO8859-1"), "UTF-8");
		} catch (UnsupportedEncodingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return str;
	}	
}

分享到:
评论
2 楼 wangxiang243 2014-07-08  
文件保存为utf8编码格式就可以了吧
1 楼 rj2012 2013-11-29  
perfect

相关推荐

    解决Tomcat在控制台console中显示乱码的问题

    另一个文件`解决Tomcat控制台中文乱码_lj成功.txt`可能包含了具体的解决方案或者某位名为“lj”的用户的成功经验。阅读这个文件,结合上下文,可能能获取更多解决乱码问题的细节。 总的来说,解决Tomcat控制台乱码...

    IDEA中文乱码的解决.pdf

    "IDEA中文乱码解决方案" IDEA是一款功能强大的集成开发环境(IDE),但是在使用过程中,中文乱码的问题经常会出现,导致开发过程中的不便。因此,了解如何解决IDEA中文乱码问题变得非常重要。本文将详细介绍解决...

    WEBSPHERE乱码问题的解决和处理

    - **-Djava.util.logging.config.file=<路径>/logging.properties**:通过配置文件来指定日志记录的编码格式,例如在`logging.properties`文件中设置`java.util.logging.FileHandler.encoding=UTF-8`。 ##### 2. ...

    windows、windows server系统下tomcat 乱码解决方案(包含注册成系统服务)

    ### Windows及Windows Server环境下Tomcat乱码解决方案与注册为系统服务方法 #### 一、引言 在实际项目开发过程中,经常会遇到Tomcat在Windows或Windows Server系统下启动时出现乱码的问题,尤其是在不通过开发...

    Java读写properties文件解决中文乱码问题.docx

    在Java中读写Properties文件时,需要注意中文乱码问题的解决方案。在读写Properties文件时,需要设置编码格式,以避免中文乱码问题。通过使用InputStreamReader和OutputStreamWriter类,并将编码格式设置为UTF-8,...

    引用国际化资源乱码--properties edit

    本文将深入探讨这个问题,并提供解决方案。 首先,我们要明白`.properties`文件的作用。这种文件主要用于存储程序中的配置信息,如文本消息、错误提示等,方便进行多语言支持。它们通常使用ISO-8859-1编码,但为了...

    SpringMVC Tomcat控制台乱码问题解决方案

    本文主要介绍了SpringMVC Tomcat控制台乱码问题解决方案,该解决方案通过修改Tomcat的logging.properties文件和使用过滤器来解决乱码问题。使用该解决方案可以解决SpringMVC框架中出现的乱码问题,对大家的学习或者...

    struts处理中文乱码问题总结

    下面我们将针对每一种情况,详细介绍具体的解决方案。 #### 三、页面显示中文乱码 页面显示中文乱码通常发生在JSP文件中包含了中文内容时。由于JSP文件默认的编码格式为ISO-8859-1,当其中包含中文时,会导致显示...

    Java读取资源文件时内容过长与换行的处理

    #### 二、解决方案 ##### 1. 使用转义字符 对于需要换行或者过长的内容,可以在行尾添加一个反斜杠`\`作为转义字符。这样在properties文件中可以实现换行的效果,同时在Java程序中读取时能够自动拼接成一个完整的...

    Java中常见错误和异常解决方法(打印).doc

    以下是一些常见的Java错误和异常及其解决方案: 1. **java.lang.NullPointerException**: 当试图访问一个为null的对象实例时,会抛出此异常。确保在使用对象之前已经初始化了它们,或者在可能引用null的地方进行...

    Hibernate_MySQL中文乱码问题.doc

    ### Hibernate与MySQL中文乱码问题解析及解决方案 #### 一、问题概述 在使用Hibernate框架进行Java应用程序开发的过程中,尤其是在连接MySQL数据库时,经常会遇到中文显示乱码的问题。这一问题通常发生在从数据库...

    idea 控制台中文乱码和web项目乱码(csdn)————程序.pdf

    在开发Java Web应用程序时,IDEA(IntelliJ IDEA)控制台和Web项目的乱码问题是一个常见的困扰。...在实践中,根据具体情况选择合适的解决方案,确保整个数据处理流程中的编码统一,可以有效地避免乱码问题。

    java 动态修改配置文件

    本文将深入探讨如何在Java中实现动态修改配置文件,同时解决中文字符编码问题,使得配置文件的读写更加高效和便捷。 首先,我们需要理解Java中的Properties类,它是处理配置文件的标准工具。`java.util.Properties`...

    各大公司企业真实面试题-阳光海融科技面试题请用Java语言编写完成如下任务的程序代码.doc

    3. **编码转换**:在网络传输和文件读写时要注意编码转换问题,避免乱码。 ### 5. 注释与文档化 **题目描述**:Java代码中可以嵌入文档化注释,你在编程中使用么?谈谈你的体会。 **使用体会**: 1. **清晰性**:...

    Java-J2EE中文问题终极解决之道.doc

    本文旨在探讨Java-J2EE中文问题的终极解决之道,通过对现有解决方案的分析,提出一套全面且有效的处理方案。 #### 二、传统的解决方案及其局限性 ##### 1. 字节码转换方法 最古老的方法之一是利用`String`类的字节...

    IDEA中Web项目控制台乱码的问题及解决方法

    在开发Java Web项目时,IDEA(IntelliJ IDEA)是一个广泛使用的集成开发环境。然而,在使用过程中,有时会遇到控制台输出出现乱码的问题,这...在今后的开发过程中,如果遇到类似问题,可以参考本文提供的解决方案。

    struts2.0总结文档2

    ### Struts2.0中的乱码问题解决方案 #### 概述 Struts是一个开源的Web应用框架,它属于MVC架构的一种实现。Struts2作为Struts1的升级版本,虽然在很多方面进行了优化和改进,但在实际开发过程中仍然会遇到一些常见...

    struts2.1.6解决乱码 补充

    #### 二、解决方案:使用CharacterEncodingFilter 为了解决这个问题,一种常见的做法是通过过滤器(Filter)来统一设置请求的字符编码。在Struts2项目中,可以使用`CharacterEncodingFilter`来实现这一目的。 #### ...

    java字符编码错误整理大全

    本文详细介绍了Java中字符编码的相关知识,包括基本概念、常见问题及解决方案等。通过对这些知识点的理解和掌握,可以帮助开发者有效地避免和解决实际项目中出现的乱码问题。在实际应用中,还需要根据具体情况灵活...

Global site tag (gtag.js) - Google Analytics