<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-61  評論-13  文章-19  trackbacks-0

    public class TranCharset {

    ??? private static final String PRE_FIX_UTF = "&#x";
    ??? private static final String POS_FIX_UTF = ";";

    ??? public TranCharset() {
    ??? }

    ??? /**
    ???? * Translate charset encoding to unicode
    ???? *
    ???? * @param sTemp charset encoding is gb2312
    ???? * @return charset encoding is unicode
    ???? */
    ??? public static String XmlFormalize(String sTemp) {
    ??????? StringBuffer sb = new StringBuffer();

    ??????? if (sTemp == null || sTemp.equals("")) {
    ??????????? return "";
    ??????? }
    ??????? String s = TranCharset.TranEncodeTOGB(sTemp);
    ??????? for (int i = 0; i < s.length(); i++) {
    ??????????? char cChar = s.charAt(i);
    ??????????? if (TranCharset.isGB2312(cChar)) {
    ??????????????? sb.append(PRE_FIX_UTF);
    ??????????????? sb.append(Integer.toHexString(cChar));
    ??????????????? sb.append(POS_FIX_UTF);
    ??????????? } else {
    ??????????????? switch ((int) cChar) {
    ??????????????????? case 32:
    ??????????????????????? sb.append("&#32;");
    ??????????????????????? break;
    ??????????????????? case 34:
    ??????????????????????? sb.append("&quot;");
    ??????????????????????? break;
    ??????????????????? case 38:
    ??????????????????????? sb.append("&amp;");
    ??????????????????????? break;
    ??????????????????? case 60:
    ??????????????????????? sb.append("&lt;");
    ??????????????????????? break;
    ??????????????????? case 62:
    ??????????????????????? sb.append("&gt;");
    ??????????????????????? break;
    ??????????????????? default:
    ??????????????????????? sb.append(cChar);
    ??????????????? }
    ??????????? }
    ??????? }
    ??????? return sb.toString();
    ??? }

    ??? /**
    ???? * 將字符串編碼格式轉成GB2312
    ???? *
    ???? * @param str
    ???? * @return
    ???? */
    ??? public static String TranEncodeTOGB(String str) {
    ??????? try {
    ??????????? String strEncode = TranCharset.getEncoding(str);
    ??????????? String temp = new String(str.getBytes(strEncode), "GB2312");
    ??????????? return temp;
    ??????? } catch (java.io.IOException ex) {

    ??????????? return null;
    ??????? }
    ??? }

    ??? /**
    ???? * 判斷輸入字符是否為gb2312的編碼格式
    ???? *
    ???? * @param c 輸入字符
    ???? * @return 如果是gb2312返回真,否則返回假
    ???? */
    ??? public static boolean isGB2312(char c) {
    ??????? Character ch = new Character(c);
    ??????? String sCh = ch.toString();
    ??????? try {
    ??????????? byte[] bb = sCh.getBytes("gb2312");
    ??????????? if (bb.length > 1) {
    ??????????????? return true;
    ??????????? }
    ??????? } catch (java.io.UnsupportedEncodingException ex) {
    ??????????? return false;
    ??????? }
    ??????? return false;
    ??? }

    ??? /**
    ???? * 判斷字符串的編碼
    ???? *
    ???? * @param str
    ???? * @return
    ???? */
    ??? 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) {
    ??????? }
    ??????? encode = "BIG5";
    ??????? try {
    ??????????? if (str.equals(new String(str.getBytes(encode), encode))) {
    ??????????????? String s4 = encode;
    ??????????????? return s4;
    ??????????? }
    ??????? } catch (Exception exception3) {
    ??????? }
    ??????? return "";
    ??? }

    ??? public static void main(String args[]) {
    ??????? System.out.println(XmlFormalize("下載"));
    ??? }
    }

    posted on 2006-03-23 09:16 xnabx 閱讀(151) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 亚洲中文字幕日产乱码高清app| 精品无码国产污污污免费网站国产 | 久久久高清日本道免费观看| 亚洲精品无码aⅴ中文字幕蜜桃| 亚洲一二成人精品区| 在线观看亚洲成人| 免费在线观看你懂的| 成人免费视频小说| 91麻豆最新在线人成免费观看| 嫩草在线视频www免费看| 一区二区三区在线免费| 久久亚洲精品成人无码| 亚洲最大的成人网| 亚洲男人的天堂久久精品| 夜夜亚洲天天久久| 亚洲AV日韩精品久久久久| 亚洲精品国产美女久久久| 亚洲国产精品综合久久一线 | 一区二区亚洲精品精华液| 亚洲高清视频免费| 久久久无码精品亚洲日韩按摩 | 一级毛片a免费播放王色电影| 色天使亚洲综合一区二区| 亚洲中文字幕无码av| 中文字幕亚洲男人的天堂网络 | 精品香蕉在线观看免费| 99久久免费中文字幕精品| 无码av免费网站| 玖玖在线免费视频| 韩日电影在线播放免费版| 久久性生大片免费观看性| 精品乱子伦一区二区三区高清免费播放| 日韩电影免费在线观看网址| 免费夜色污私人影院网站电影| 色五月五月丁香亚洲综合网| 国产精品亚洲片在线花蝴蝶| 美女的胸又黄又www网站免费| 免费国产va视频永久在线观看| 精品免费久久久久国产一区| 久久福利青草精品资源站免费| 欧洲人免费视频网站在线|