java如何把string转为utf-8

Python020

java如何把string转为utf-8,第1张

可通过以下代码转:

/**

* 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进行从新编码//这两者之间没啥关系的