配置文件application.properties中文乱码问题

栏目: Java · 发布时间: 5年前

内容简介:版权声明:本文为博主原屙文章,喜欢你就担走。 https://blog.csdn.net/leftfist/article/details/88398107

版权声明:本文为博主原屙文章,喜欢你就担走。 https://blog.csdn.net/leftfist/article/details/88398107

application.properties有个配置项,值含中文,就不行了。

网上绝大多数给出的方案,在idea里面,都是说调整设置,setting->editor->File Encodings之类,其实没有什么卵用,对于我这个个案来说。任凭我设来设去,读到的配置信息,仍然是乱码。我的配置文件,其实已经是UTF-8了。

后来还是改代码了事,读取配置文件的时候,指定编码。

原代码:

InputStream is = getInputStream(path);
if (is != null) {
	Properties pro = new Properties();
	try {
		System.err.println("加载配置文件...");
		pro.load(is);
		System.err.println("加载配置文件完毕");
	} catch (IOException e) {
		System.err.println("加载配置文件失败");
	}
}

修正过的代码:

InputStream is = getInputStream(path);
if (is != null) {
	Properties pro = new Properties();
	try {
		System.err.println("加载配置文件...");
		BufferedReader bf = new BufferedReader(new InputStreamReader(is, "UTF-8"));
		pro.load(bf);
		System.err.println("加载配置文件完毕");
	} catch (IOException e) {
		System.err.println("加载配置文件失败");
	}
}

我在配置文件里,设置的这个含中文字符的键值,是一个路径,一个外部应用程序的路径。它装在中文路径里。看起来,不够明智,纯英文比较不容易出麻烦一点。有些鬼东西,就算你配置文件可以读出中文,但它本身真的不支持中文,如nginx,放在中文路径里,是跑不起来的。

这种非英文的问题,从我开始认识计算机以来就存在,20年过去了,看上去并没有什么进展。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

软件研发之道

软件研发之道

Jim McCarthy、Michele McCarthy / 赵 俐、石华耀 / 人民邮电出版社 / 2011-8 / 45.00元

Jim McCarlthy等的《软件研发之道 微软开发团队的经验法则》叙述 了微软Visual C++开发团队的故事,通过作者的总结和归纳告诉读者如何 构建一个优秀的软件开发团队,如何在一段时间内成功地交付一个软件。 作为升级版,作者将言简意赅的法则扩展到57条,包括了软件研发及营销 的全部内容,相信每一位项目经理都会对此书爱不释手。 《软件研发之道 微软开......一起来看看 《软件研发之道》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具