html頁面編碼轉換成中文

private static String convertToChinese(String dataStr) {
  System.out.println("--------data str---->" + dataStr);
  if(dataStr == null || dataStr.length() == 0) {
   return dataStr;
  }
  int start = 0;
  int end = 0;
  final StringBuffer buffer = new StringBuffer();
  while (start > -1) {
   int system = 10;// 進制
   if (start == 0) {
    int t = dataStr.indexOf("&#");
    if (start != t)
     start = t;
    if(start > 0) {
     buffer.append(dataStr.substring(0, start));
    }
    if(start == -1) {
     return dataStr;
    }
   }
   end = dataStr.indexOf(";", start + 2);
   String charStr = "";
   if (end != -1) {
    charStr = dataStr.substring(start + 2, end);
    // 判斷進制
    char s = charStr.charAt(0);
    if (s == 'x' || s == 'X') {
     system = 16;
     charStr = charStr.substring(1);
    }
    // 轉換
    try {
     char letter = (char) Integer.parseInt(charStr, system);
     buffer.append(new Character(letter).toString());
    } catch (NumberFormatException e) {
     e.printStackTrace();
    }
   }
   
   // 處理當前unicode字符到下一個unicode字符之間的非unicode字符
   start = dataStr.indexOf("&#", end);
   if (start - end > 1) {
    buffer.append(dataStr.substring(end + 1, start));
   }
   // 處理最後面的非 unicode字符
   if (start == -1) {
    int length = dataStr.length();
    if (end + 1 != length) {
     buffer.append(dataStr.substring(end + 1, length));
    }
   }
  }
  return buffer.toString();
 }

 

 

原文鏈接;http://crazysky.iteye.com/blog/1132850

發佈了37 篇原創文章 · 獲贊 13 · 訪問量 21萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章