struts中使ApplicationResources.properties支持中文

使ApplicationResources.properties支持中文
建立一个ApplicationResources_ISO.properties文件,把应用程序用的message都写进去,
然后在dos下执行这个命令,是jdk/bin中的cmd:
native2ascii -encoding gb2312 ApplicationResources_ISO.properties ApplicationResources.properties
这样就会将ISO编码的ApplicationResources转换成GB2312编码的格式了,同时保存到
ApplicationResources.properties。这个文件需要保存在 \WEB-INF\classes目录中
native2ascii这个工具是jdk自带的一个东东,所以如果path都设定正确就可以直接运行了,
你可以在$java_home$/bin下找到他。
转换后的中文类似于这个样子:
iso 格式下 :tj.type=商品车类型
gb2312格式下 :tj.type=\u5546\u54c1\u8f66\u7c7b\u578b

 

另一种方法:

修改struts源码解决ApplicationResources.properties里不能直接用中文的一个方法

native2ascii
用这个命令转换我觉得不方便 不知别人如何 呵呵

改页面8859_1(不能是iso-8859-1)可以不用native2ascii转换ApplicationResources.properties
可是没页都要改啊8859_1也很麻烦

所以只好找struts本身来解决了呵呵

struts.jar

org.apache.struts.taglib.bean.MessageTag类


找到doStartTag()方法

里面有行ResponseUtils.write(super.pageContext, message);

在这行上面加上一句 如下

        try
        {
            message = new String(message.getBytes("iso-8859-1"), "gb2312");
        }
        catch(Exception exception) { }

        ResponseUtils.write(super.pageContext, message);


这样就OK了

<%@ page contentType="text/html; charset=gb2312" language="java" %>
要用gb2312

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值