今天写一个程序使用ROME这个开源组件生成rss2.0文件,使用utf-8格式保存中文总出现乱码,从网上搜了一下发现遇到这个问题的人不少,但是好像没有找到好的解决方法。 例如: 保存“中文”两个汉字时就会出现乱码,将保存文件的格式转为gb2312就可以正确显示,说明Rome在保存数据时采用的是gb2312格式,文件utf-8时即出现乱码,这样可以采用将数据转码http://www.wujianrong.com/archives/2006/11/webworkromerss.html的方法,但是实际运用中还是有部分文字出现乱码,最终其实问题不是出在Rome上而是这里: SyndFeedOutput output = new SyndFeedOutput(); 改为 SyndFeedOutput output = new SyndFeedOutput(); 这样问题就解决了! FileWriter写数据时采用的是系统默认的编码格式,所以需要下面的方法来设置使用“UTF-8”编码。 |