可通过以下代码转:
/**
* Get XML String of utf-8
*
* @return XML-Formed string
*/
public static String getUTF8XMLString(String xml) {
// A StringBuffer Object
StringBuffer sb = new StringBuffer()
sb.append(xml)
String xmString = ""
String xmlUTF8=""
try {
xmString = new String(sb.toString().getBytes("UTF-8"))
xmlUTF8 = URLEncoder.encode(xmString, "UTF-8")
System.out.println("utf-8 编码:" + xmlUTF8)
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
// return to String Formed
return xmlUTF8
}
Java programming language具有目前大部分编程语言所共有的一些特征,被特意设计用于互联网的分布式环境。Java具有类似于C++语言的"形式和感觉",但它要比C++语言更易于使用,而且在编程时彻底采用了一种"以对象为导向"的方式。使用Java编写的应用程序,既可以在一台单独的电脑上运行,也可以被分布在一个网络的服务器端和客户端运行。另外,Java还可以被用来编写容量很小的应用程序模块或者applet,做为网页的一部分使用。applet可使网页使用者和网页之间进行交互式操作。
Java是Sun微系统公司在1995年推出的,推出之后马上给互联网的交互式应用带来了新面貌。目前,最常用的两种互联网浏览器软件中都包括一个Java虚拟机。几乎所有的操作系统中都增添了Java编译程序。
通过JDK1.6知道String类中getBytes(”编码“)方法可以讲一个数用指定的编码转成一个字节数组,String中通过指定的 charset解码指定的 byte 数组,构造一个新的 String。代码如下:
try{
String s = "java学习"
System.out.println(s)
String result = new String(s.getBytes("GB2312"),"iso-8859-1")
System.out.println(s)
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
扩展资料:
getBytes() 方法有两种形式:
1、getBytes(String charsetName): 使用指定的字符集将字符串编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
2、getBytes(): 使用平台的默认字符集将字符串编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
参考资料:
百度百科-getBytes()
byte[] b=string.getBytes("GB2312")//使用GB2312编码方式对字符串string进行编码//这时要想将字节数组b的内容正确解码只能使用GB2312的编码方式进行解码,即String str=new String(b,"GB2312")//这里若使用UTF-8编码方式来进行解码就会乱码//将eclipse默认的编码方式改为UTF-8,只是用该编码方式对.java源文件进行编码保存//这个对new String(string.getBytes("GB2312"),"UTF-8")没啥影响的//因为从java源文件获取字符串string时,已经通过UTF-8编码方式进行解码了//而string.getBytes("GB2312")是使用指定的编码方式对字符串string进行从新编码//这两者之间没啥关系的