java字符转换

 

 

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">已知字符串编码格式:</span>

 

 

 


 

 

String str = new String(aa.getBytes("encode"),"newencode");


其中  aa 为需要转换的字符串  eccode 为字符串 aa 的编码格式 ,newencode 为目的编码格式

 

 

未知字符串的编码格式:

 

public class ChangeChar {
	public static String change(String str,String charset) throws UnsupportedEncodingException{
		String encode = getEncoding(str);
		byte [] data = str.getBytes(encode);
		str = new String(data,charset);
		return str;
	}
	public static String getEncoding(String str) {      
	       String encode = "GB2312";      
	      try {      
	          if (str.equals(new String(str.getBytes(encode), encode))) {      
	               String s = encode;      
	              return s;      
	           }      
	       } catch (Exception exception) {      
	       }      
	       encode = "ISO-8859-1";      
	      try {      
	          if (str.equals(new String(str.getBytes(encode), encode))) {      
	               String s1 = encode;      
	              return s1;      
	           }      
	       } catch (Exception exception1) {      
	       }      
	       encode = "UTF-8";      
	      try {      
	          if (str.equals(new String(str.getBytes(encode), encode))) {      
	               String s2 = encode;      
	              return s2;      
	           }      
	       } catch (Exception exception2) {      
	       }      
	       encode = "GBK";      
	      try {      
	          if (str.equals(new String(str.getBytes(encode), encode))) {      
	               String s3 = encode;      
	              return s3;      
	           }      
	       } catch (Exception exception3) {      
	       }      
	      return "";      
	   }      
}


在主函数中调用

 

 

/**
		 * aa 为需要转换的字符串
		 * str 为转换后的字符串
		 * newencode 为目的编码格式
		 */
		String str = ChangeChar.change(aa, "newencode");

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值