java获取字符编码并转换_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > java获取字符编码并转换

java获取字符编码并转换

 2015/5/16 1:04:24  ququjioulai  程序员俱乐部  我要评论(0)
  • 摘要:看到别人写的,也算是一种解决办法,稍微该了下,用数组来装和for循环来获取,这样要填新编码方便点./***返回传入字符串的编码格式*@paramstr*@return*/publicstaticStringgetCodeType(Stringstr){String[]code={"ISO-8859-1","UTF-8","GBK","GB2312"};StringtestStr=null;try{for(Strings:code){testStr=newString(str.getBytes
  • 标签:Java 编码
看到别人写的,也算是一种解决办法,稍微该了下,用数组来装和for循环来获取,这样要填新编码方便点.

class="java" name="code">

	/**
	 * 返回传入字符串的编码格式
	 * @param str
	 * @return
	 */
	public static String getCodeType(String str){
		String[] code={"ISO-8859-1","UTF-8","GBK","GB2312"};
		String testStr=null;
		
		try {
			for(String s:code){
				testStr=new String(str.getBytes(s),s);
				if(str.equals(testStr)){
					//System.out.println(s);
					return s;
				}
			}
			return null;
		} catch (UnsupportedEncodingException e) {
			return null;
		}
	}
	
	/**
	 * 把传入值转换成特定编码
	 * @param str 要转换的值
	 * @param charEncode 编码格式,默认utf-8
	 * @return
	 */
	public static String getConversionValue(String str,String charEncode){
		charEncode = (charEncode==null ||"".equals(charEncode))?"utf-8":charEncode;
		String strCode=getCodeType(str);
		if(strCode!=null){
			try {
				str=new String(str.getBytes(strCode),charEncode);
			} catch (UnsupportedEncodingException e) {
				return "";
			}
		}
		return str;
	}
	/**
	 * 把传入值转换成特定编码,默认utf-8
	 * @param str
	 * @return
	 */
	public static String getConversionValue(String str){
		return getConversionValue(str,null);
	}

发表评论
用户名: 匿名