通过java代码如何把改变xml文件的字符编码格式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过java代码如何把改变xml文件的字符编码格式相关的知识,希望对你有一定的参考价值。

xml最顶层标签就有设置编码属性
如下:
<?xml version="1.0" encoding="UTF-8"?>
参考技术A xml最顶层标签就有设置编码属性
如下:
<?xml
version="1.0"
encoding="UTF-8"?>

在JAVA中如果字符串被改变了编码格式,该怎么样将它还原回来呢?

例如:
String fileName = "你好.xls";
String newname = new String(fileName.getBytes("UTF-8"),"gb2312");
得到的newname = "浣�ソ.xls";
怎样将乱码的newname还原成原来的字符串呢?
这个是struts2文件上传乱码问题,我不想去改配置文件,取得的文件名乱码能否在action方法中恢复正常,要是不行再考虑编码统一问题。
PS:页面是utf-8,后台是gbk的,取得的乱码和上面转码后的结果一样
能不要说些废话么,我只想知道java有没有能把改了编码格式的字符串再改回来,我确定字符串由utf-8转码成了gb2312,所以想在方法中能把它再转码回来。

在myeclipse里面修改:你要修改的文件(夹)→右键→properties→Text file encoding→other→选择你要的字符集就可以了。或者剪切出来粘贴到普通文本中然再粘贴回去也可能会好

你去看看这个问题吧,那都是struts设置你的字符集http://zhidao.baidu.com/question/441516106.html

如果是servlet简单了
request.setCharacterEncoding("gb2312");//请求字符集
response.setContentType("text/html;charset=gb2312");//响应字符集
或者你自己百度搜索设置Struts更有针对性
参考技术A UTF-8 在装换成 gb2312 的是,信息已经丢失了,不可能在正常的转换回去的
只能通过设置正确的编码方式来 获取 正确的文件内容本回答被提问者和网友采纳
参考技术B notepad 粘贴出来改编码
editplus 貌似也行...............
参考技术C 有个叫什么encoding的方法。你查查API吧具体忘记了 参考技术D 你是用的eclipse吗 ,实在不行就完全卸载了重新再装吧

以上是关于通过java代码如何把改变xml文件的字符编码格式的主要内容,如果未能解决你的问题,请参考以下文章

java如何转换富文本框中的中文编码格式,且把标签变成特殊字符

用java的流复制文件,并改变编码格式,由ansi改为utf-8格式

求教大神,我新建的java webservice 从客户端传过来的xml格式字符串 怎么解析

excel通过VBA导出XML文件时候如何设定编码格式

我的keil 4为啥不能改变编码格式?没有那个选项?

安卓通过java代码改变一个XML文件的背景。