当前位置: 代码迷 >> J2SE >> java中有没有Unicode 与 Ansi 码互转的方法?解决办法
  详细解决方案

java中有没有Unicode 与 Ansi 码互转的方法?解决办法

热度:713   发布时间:2016-04-24 17:35:05.0
java中有没有Unicode 与 Ansi 码互转的方法?
在asp中可以通过
asc()     和   chr()转换         不知道java中用什么方法?

------解决方案--------------------
new String(str.getBytes( "ISO8859-1 "), "UTF-8 ");
------解决方案--------------------
public class UnicodeTest {

public static void main(String args[]) {
UnicodeTest UT = new UnicodeTest();
UT.test1();
}

public void test1() {
String str = "你好测试信息abc123 ";
try {
byte[] b = str.getBytes( "GBK ");
System.out.println(str + " -(GBK)编码: " + bytesToHexStr(b));
System.out.println( " ");

str = new String(b, "GBK ");
System.out.println( "从GBK编码 " + bytesToHexStr(b) + " 重新转换为字串: "
+ str);
System.out.println( "------------------------------------- ");


b = str.getBytes( "UnicodeBigUnmarked ");
System.out.println(str + " -(UCS2)编码: " + bytesToHexStr(b));
System.out.println( " ");

str = new String(b, "UnicodeBigUnmarked ");
System.out.println( "从(UCS2)编码 " + bytesToHexStr(b) + " 重新转换为字串: "
+ str);
System.out.println( "------------------------------------- ");


b = str.getBytes( "GB18030 ");
System.out.println(str + " -(GB18030)编码: " + bytesToHexStr(b));
System.out.println( " ");

str = new String(b, "GB18030 ");
System.out.println( "从(GB18030)编码 " + bytesToHexStr(b) + " 重新转换为字串: "
+ str);
System.out.println( "------------------------------------- ");



b = str.getBytes( "ASCII ");
System.out.println(str + " -(ASCII)编码: " + bytesToHexStr(b));
System.out.println( " ");

str = new String(b, "ASCII ");
System.out.println( "从(ASCII)编码 " + bytesToHexStr(b) + " 重新转换为字串: "
+ str);

} catch (Exception e) {
e.printStackTrace();
}
}

private String bytesToHexStr(byte[] b) {
if (b == null)
return " ";
StringBuffer strBuffer = new StringBuffer(b.length * 3);
for (int i = 0; i < b.length; i++) {
strBuffer.append(Integer.toHexString(b[i] & 0xff));
strBuffer.append( " ");
}
return strBuffer.toString();
}

}
  相关解决方案