首页 > 学院 > 开发设计 > 正文

中文转为URL编码的UTF-8

2019-11-07 22:46:12
字体:
来源:转载
供稿:网友

判断String是否包含中文

public static boolean isContainChinese(String str) {        Pattern p = Pattern.compile("[/u4e00-/u9fa5]");        Matcher m = p.matcher(str);        return m.find();    }

把String中的中文转换为URL编码的UTF-8

public static String chineseToURLEncodeUTF8(String chinese){        try {            String ret = "";            for(int i=0; i<chinese.length(); i++){                String tmpChar = String.valueOf(chinese.charAt(i));                if(isContainChinese(tmpChar)){                    ret += URLEncoder.encode(tmpChar, "UTF-8");                }else{                    ret += tmpChar;                }            }            return ret;        } catch (UnsupportedEncodingException e) {            e.PRintStackTrace();        }        return null;    }注意:要对String中的每个字符单独判断是否属于中文。如果对整个String进行编码,则可能有误,例如"http://abc.def_你好"会把"://"也转换了


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表