千家信息网

Java中properties文件编码问题怎么解决

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,本文小编为大家详细介绍"Java中properties文件编码问题怎么解决",内容详细,步骤清晰,细节处理妥当,希望这篇"Java中properties文件编码问题怎么解决"文章能帮助大家解决疑惑,下
千家信息网最后更新 2026年11月03日Java中properties文件编码问题怎么解决

本文小编为大家详细介绍"Java中properties文件编码问题怎么解决",内容详细,步骤清晰,细节处理妥当,希望这篇"Java中properties文件编码问题怎么解决"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

1、properties文件显示乱码问题

原因是因为properties默认使用ASCII码,就算在文件中填写了中文,再打开后依然会转换成ASCII码的形式。
首先确定properties配置文件的编码格式,通常情况下properties的默认编码格式为ISO-8859-1。
更改properties的编码格式为UTF-8:
IDEA:设置->文件编码

eclipse:右键该文件->properties

这里不但设置了编码格式为UTF-8,旁边还有Transparent native-to-ascii conversion选项(eclipse里面没有),这个东西有啥作用呢

2、读取properties文件乱码

设置完properties文件编码格式为UTF-8后,一般我们通过字节流读取properties文件的方式会乱码:

    public void TestProp1() throws IOException {        Properties properties = new Properties();        InputStream in = Thread.currentThread().getContextClassLoader()                .getResourceAsStream("application.properties");        properties.load(in);        System.out.println(properties.getProperty("yaml.name"));    }

解决办法就是通过字符流的方式读取properties文件:

    public void TestProp() throws IOException {        Properties properties = new Properties();        InputStream in = Thread.currentThread().getContextClassLoader()                .getResourceAsStream("application.properties");        properties.load(new InputStreamReader(in, "UTF-8"));        System.out.println(properties.getProperty("yaml.name"));    }

3、Spring boot的@ConfigurationProperties读取properties文件乱码

方法一
使用yml文件
方法二
设置Transparent native-to-ascii conversion也就是上述图片上属性文件的配置勾选自动转换成ASCII,但显示原生的内容。
在IDEA勾选这个选项的作用就是:显示为UTF-8格式,但是运行时转换成ASCII的形式,实际上使用的是native2ascii.exe来进行转换。
运行时显示如下图:

方法三
添加注解@PropertySource并声明encoding="UTF-8"

//加注解@Component@ConfigurationProperties(prefix = "yaml")@PropertySource(value = {"classpath:yaml.properties"}, encoding = "UTF-8")

注意:这种方法只能对自定义的properties文件有效,对于spring boot默认生成的application.properties没有效果

读到这里,这篇"Java中properties文件编码问题怎么解决"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。

文件 编码 UTF-8 格式 问题 乱码 方法 内容 文章 作用 就是 形式 方式 注解 运行 配置 妥当 有效 东西 也就是 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 花魁咖啡 互联网科技社 北京互联网科技 壕鑫互联网络科技 宁波青枫互联网科技有限公司 成都铂石互联网科技做什么的 晓花互联网科技有限公司网址 工业互联网展湾科技股份有限公司 上海科技产业互联网平台 黑科技 体验场景 互联网大会 互联网第三次科技革命特征 电子商务与互联网科技的关系 领航科技大厦互联网公司 广州梦谷互联网科技有限公司领导 福建互联网展示科技馆设计 互联网科技平台产品运营 北京天晋互联网科技有限公司 互联网科技自媒体灵感 如何强化互联网金融科技 颐高云石互联网科技 科技互联网公司装修 互联网科技有限公司图片 以房互联网科技 承德科技产业互联网发展 互联网对科技的发展 恒生互联网科技指数跳水 深圳互联网科技的发展 新氧科技和美国互联网有关系吗 互联网科技手机排行榜 现代科技的标志之一的互联网
0