`
bu_choreography
  • 浏览: 196672 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java读取properties文件中文乱码问题解决

    博客分类:
  • Java
阅读更多
问题的提出:初用properties,读取java properties文件的时候如果value是中文,会出现读取乱码的问题
问题分析:开始以为是文件保存编码问题,把eclipse中所有的文件编码都修改成utf8,问题依然存在;把内容复制到notepad++进行utf8编码转换,问题依旧;上网搜索有人提议重写properties类或者用jdk自带的编码转换工具,嫌麻烦而且凭感觉jdk开发者不可能不考虑东亚几国的字符编码问题;因为properties文件操作的代码是参考百度文库里的一边文章的,分析其代码后,发现其用的是字节流来读取文件,具体代码如下:
Properties properties = new Properties();
InputStream inputStream = this.getClass().getResourceAsStream("/menu.properties");
properties.load(inputStream );
System.out.println(properties.getProperty("a"));

因为字节流是无法读取中文的,所以采取reader把inputStream转换成reader用字符流来读取中文。代码如下:
Properties properties = new Properties();
InputStream inputStream = this.getClass().getResourceAsStream("/menu.properties");
BufferedReader bf = new BufferedReader(new    InputStreamReader(inputStream));
properties.load(bf);
System.out.println(properties.getProperty("a"));


测试后能正常读取中文
分享到:
评论
6 楼 763863446 2015-10-27  
[b][/b]   正好解决这个问题,非常感谢
引用
!!!
5 楼 rmzdb 2015-09-14  
楼主你这个东西,没有结局根本问题。正确的方式是:


[b][color=red]BufferedReader bf = new BufferedReader(new  InputStreamReader(inputStream,"UTF-8"));[/b]


要指定类型,否则还是会出现乱码的

 
4 楼 Mo-康少 2015-09-05  
厉害
3 楼 valenon 2015-06-26  
这不是李晓峰吗?
2 楼 valenon 2015-06-26  
赞一个
1 楼 nerdy 2014-05-16  
楼主太厉害了..

相关推荐

    JAVA 解决Properties文件保存中文乱码

    本文将深入探讨如何在Java中解决Properties文件保存和读取中文乱码的挑战。 首先,我们需要理解Java默认使用ISO-8859-1编码来处理Properties文件。由于此编码不支持大部分中文字符,因此在保存或加载包含中文的...

    eclipse下properties文件中文乱码的解决方案

    对于部分情况,仅修改Eclipse的编码设置可能不足以彻底解决问题,尤其是在使用Struts框架时,资源属性文件在被读取到JSP页面上时仍可能出现乱码。这是因为Java在处理这些文件时可能会进行两次编码,导致乱码问题依旧...

    Java Properties 解决中文乱码和顺序读写.docx

    Java Properties 类是Java标准库中...总之,Java Properties类是Java开发中处理配置文件的利器,通过它的方法可以方便地读取、修改和保存配置信息,尤其在处理包含中文字符的配置时,注意编码问题,确保数据的正确性。

    解决Properties写中文乱码

    1. **设置Java程序读写Properties时的编码**:在使用`Properties.load()`和`Properties.store()`方法读写Properties文件时,可以传入一个`java.io.InputStream`或`java.io.OutputStream`对象,并通过`...

    idea中.properties文件中文显示乱码问题的解决 文件中文乱码1

    为了确保Java读取`.properties`文件时正确解析UTF-8编码,你可以在文件开头添加以下注释: ``` # -*- coding: utf-8 -*- ``` 这行注释告诉Java解释器文件使用的是UTF-8编码,但这只对使用某些编辑器(如Eclipse)...

    java properties文件中文转化

    当我们在properties文件中直接使用中文时,Java在读取时可能会出现乱码。为了解决这个问题,我们可以使用两种策略: 1. 文件编码转换:在写入properties文件时,使用支持中文的编码,如UTF-8。在读取时,需要指定...

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

    本篇文章将深入探讨如何解决Java读写.properties文件时的中文乱码问题。 首先,了解.properties文件的特性。这种文件的默认编码通常是ISO-8859-1,它不支持中文字符。因此,当文件中含有中文时,必须明确指定读写时...

    java 读取properties配置文件内容乱码

    NULL 博文链接:https://liuzidong.iteye.com/blog/776637

    spring boot使用i18n时properties文件中文乱码问题的解决方法

    Spring Boot 使用 i18n 时 properties 文件中文乱码问题的解决方法 Spring Boot 是一个流行的 Java 框架,用于快速开发 Web 应用程序。然而,在使用 Spring Boot 时,遇到中文乱码问题的可能性很高,特别是在使用 ...

    Java读取properties配置文件时,出现中文乱码的解决方法

    总之,解决Java读取`properties`文件时的中文乱码问题的关键在于明确指定正确的文件编码。通过在代码中设置合适的编码,以及注意文件保存和编辑的编码设置,可以有效地避免这类问题。同时,保持良好的编程习惯和项目...

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

    Java读写properties文件解决中文乱码问题 Java读写properties文件是在Java开发中一种常见的配置文件读写方式,但是在读写properties文件时,经常会遇到中文乱码问题。下面将详细介绍Java读写properties文件解决中文...

    Java关于中文乱码问题的多种解决方法

    在Java编程中,中文乱码问题是一个常见的困扰,尤其是在处理文件读写、网络传输或数据库操作时。本文将深入探讨几种解决Java中中文乱码问题的方法,并以MyEclipse为开发环境,结合实际示例进行讲解。 1. 文件读写中...

    读取properties文件内容

    ConfigFile configfile = ConfigFile.getInstance("ipConfig123.properties"); String ip = configfile.getkeyvalue("ip"); 可以取出ipConfig123.properties 文件中IP的内容

    JAVA常见中文乱码问题解决方法

    Java编程语言在处理中文字符时可能会遇到乱码问题,这主要源于Java的源代码编码、JVM处理class文件以及不同操作系统、数据库系统之间的编码不一致。本文深入剖析了Java中文问题的根源,并提供了相应的解决方案。 一...

    Java开发乱码问题解决方法汇总

    Java开发乱码问题解决方法汇总 Java开发中乱码问题是非常常见的问题之一,而解决这些问题需要具备一定的技术知识和经验。...如果读者在实际开发中遇到乱码问题,可以尝试使用这些方法来解决问题。

    android中读取properties文件

    在Android开发中,读取`properties`文件是一个常见的任务,主要用于存储配置信息或者与Java中的`.properties`文件进行交互。`.properties`文件是一种简单的键值对格式,常用于跨平台的配置存储。以下是对这个主题的...

    Java中文乱码浅析及解决方案

    综上所述,解决Java中文乱码问题的关键在于确保整个程序的编码一致性,包括源代码、编译器、运行环境、文件读写、网络传输以及数据库操作等环节。通过细心配置和适当地指定编码,我们可以有效地避免乱码问题,确保...

    java项目编译时中文乱码解决

    以下是一些针对Java项目编译时中文乱码问题的解决方案。 1. **IDE设置** - **Eclipse**:在Eclipse中,可以右键点击项目 -> 属性 -> Resource,设置文本文件的编码为UTF-8。此外,也可以在项目根目录下创建一个名...

    java操作properties方法

    Java提供了`java.util.Properties`类来方便地读取和写入这些文件。 首先,让我们详细了解`Properties`类的功能: 1. **读取Properties文件**:使用`Properties`类的`load()`方法可以从输入流中加载`.properties`...

    java读取properties文件的方法实例分析

    本篇文章将深入探讨如何在Java中读取`.properties`文件,无论它们位于项目内部还是外部。 1. **不在项目中读取.properties文件** 当`.properties`文件位于项目的外部时,我们需要使用文件系统路径来访问它。下面...

Global site tag (gtag.js) - Google Analytics