java properties读取中文_Java读取properties文件中文乱码
Java读取properties文件中文乱码
之前读取properties配置文件时候全都是英文或者数字之类的,最近项目有个需求要properties配置文件中有中文字符存在,那么读取java properties文件的时候如果value是中文,结果出现读取乱码的问题。
问题分析:开始以为是文件保存编码问题,我当前项目开发工具使用的Idea,设置有全局编码UTF-8,这个文件查看了也是UTF-8编码,但取出数据是乱码;后来放到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, "UTF-8"));
properties.load(bf);
System.out.println(properties.getProperty("a"));
以上操作之后再次运行已经解决了Java读取properties文件中文乱码问题
java properties读取中文_Java读取properties文件中文乱码相关推荐
- 解决java web中safari浏览器下载后文件中文乱码问题
解决java web中safari浏览器下载后文件中文乱码问题 参考文章: (1)解决java web中safari浏览器下载后文件中文乱码问题 (2)https://www.cnblogs.com/ ...
- java properties读取缓存_java 读取 properties文件的各种方法
1.使用java.util.Properties类的load()方法 示例: InputStream in = lnew BufferedInputStream(new FileInputStream ...
- java解析txt文本文件_java读取文本文件内容方法详解,java如何读取txt文件?
你知道java读取文本文件内容方式都有哪些吗?下面要给大家分享的就是比较简单的方法,一起来了解一下吧. 如何使用java实现读取TXT文件里的内容的方法以及思路: 下面先来看一下例子:import j ...
- java加载配置文件_Java 读取配置文件的五种方式
方式一:采用ServletContext读取,读取配置文件的realpath,然后通过文件流读取出来. 因为是用ServletContext读取文件路径,所以配置文件可以放入在WEB-INF的clas ...
- java访问excel表格_Java读取excel表格(示例代码)
Java读取excel表格 一般都是用poi技术去读取excel表格的,但是这个技术又是什么呢 什么是Apache POI? Apache POI是一种流行的API,它允许程序员使用Java程序创建, ...
- java excel 读取表头_java 读取 excel 表格内容
一.添加依赖 org.apache.poi poi 3.8 org.apache.poi poi-ooxml 3.8 1 2 3 4 5 6 7 8 9 10 二.工具类 根据文件后缀判断 2003 ...
- java 字符串 数字个数_JAVA 统计字符串中中文,英文,数字,空格的个数
packagecom.example.test;public classCountCharacter {/**中文字符*/ private int chCharacter = 0;/**英文字符*/ ...
- java properties 路径问题_Java 读取Properties文件时应注意的路径问题
Java读取properties文件的方法比较多,网上最多的文章是"Java读取properties文件的六种方法",但在Java应用中,最常用还是通过java.lang.Clas ...
- java properties读取缓存_Java读取Properties文件
有一个properties文件box.properties,内容如下: Color=Red Name=Box Length=18 Width=7 Heigth=8 获取其中的属性值,可用如下代码: I ...
最新文章
- Android UI Button 和GridView 的设计--优化(2)
- vue代码上传服务器后背景图片404解决方法
- wxWidgets:wxXmlDocument类用法
- SpatialHadoop中空间索引系列之(四)空间格网索引实现
- Oracle数据库的备份与恢复技术
- mysql 如何解决字段不区分大小写的问题
- matlab滤除100hz,关于滤波器滤波的问题,要求滤除3000Hz以上,但滤除后只剩下1000Hz以内的...
- 第1章 信息系统综合知识
- 微鉴道长SLAM学习笔记(目录)
- Linux常用命令宝典(简单易懂)
- 芯片的IR drop是什么
- 《娱乐至死》读书笔记
- iMatrix平台的权限管理系统是一个基于角色的访问控制系统
- 为什么我没有早点进入IT行业?
- 2018仁爱英语7年级下册U6T2学科讲义(有答案)
- 百思不得其解的Failed to allocate a managed memory buffer of 268435456 bytes.错误解决
- Java中静态方法的使用
- 总结禁止弹窗关闭弹窗的六种方法
- rancher搭建cdh6.2大数据平台
- (二十九 ~ 三十一)巴菲特与索罗斯的投资习惯:投资习惯