资源绑定properties文件出现乱码问题解决方法

本文介绍了在非Maven和Maven项目中遇到资源文件properties乱码的解决方法,包括修改编码格式和放置文件的位置。在非Maven项目中,需确保properties文件位于src目录下,并尝试将编码从'ISO-8859-1'更改为'utf-8'或'GBK'。在Maven项目中,properties文件应放入resources目录,且getBundle方法内指定的文件名不需包含.properties后缀。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 如果你是创建的不是一个maven项目:(注意:xxx.properties项目要放在路下,也就是src文件下)
   //反射机制中的资源绑定器
        ResourceBundle bundle=ResourceBundle.getBundle("temp");
        //这样的会出现乱码的情况
        String userName = bundle.getString("userName");
        System.out.println(userName);
        //这样的话就不会出现中文了
        String userName1=new String(bundle.getString("userName").getBytes("ISO-8859-1"),"utf-8");
        System.out.println(userName1);

注意:这里把"ISO-8859-1"改成utf-8,也有可能乱码,如果出现乱码就把utf-8改成GBK(我在普通项目中用utf-8没事,在Maven项目中用utf-8就出现了毛病,改成GRK就没事了)
2. 如果你是在Meven项目中创建的项目。你要把xxx.properties文件夹放在资源文件夹中(resources)不然会找不到文件报错

        //反射机制中的资源绑定器
        ResourceBundle bundle=ResourceBundle.getBundle("temp");
        //这样的会出现乱码的情况
        String userName = bundle.getString("userName");
        System.out.println(userName);
        //这样的话就不会出现中文了
        String userName1=new String(bundle.getString("userName").getBytes("ISO-8859-1"),"GBK");
        System.out.println(userName1);
  1. 还有要注意的是:getBundle内的文件名字不用带.properties
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值