27/06/2005

文字與 Unicode 脫逸序列碼雙向轉換

因為之前介紹過透過 Javascript 產生 Unicode 脫逸序列的方法。後來有網友又問道如何再將這 Unicode 序列轉回字串,我將解答公佈於下,有興趣的朋友自己試試囉!

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=big5">
<script language=javascript>
<!--
function StringToUniCode(source) {
  sret = "";
  // Unicode 跳脫序列之格式為 u00ff
  for(var i=0; i < source.length; i++) {
     var num = new Number( source.charCodeAt(i));
     sret += "\u" + num.toString(16);
  }
  return sret;
}
function UniCodeToString(source) {
  var codeAry = source.split("\u");
  var sret = "";

  for(var i=0; i < codeAry.length; i++) {
    if(codeAry[i]=="")
      continue;
    sret += String.fromCharCode("0x" + codeAry[i]);
  }
  return sret;
}

//-->
</script>
將文字轉成 Unicode 跳脫序列
<form name=content>
來源:<input type=TEXT name=source size=40 value="常用連絡人"><br>
結果:<input type=TEXT name=result size=40><br>
<input type=button value="轉換成Unicode" onclick=
  "document.forms.content.result.value = StringToUniCode(document.forms.content.source.value)">
<input type=button value="轉換回文字" onclick=
  "alert(UniCodeToString(document.forms.content.result.value))">
</form>

13/11/2004

Unicode 脫逸序列轉換

這裡提供一段程式碼,可以透過 JavaScript 將文字轉換為 Unicode 脫逸序列。這段程式碼,不論是對網頁開發人員,還是對 java resource bundle 的翻譯人員,都有很大的方便性。使用時只要將底下的程式碼複製起來,以 html 副檔名儲存,就可以用 browser 執行了。

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=big5">
<script language=javascript>
<!--
function StringToUniCode(source) {
  sret = "";
  // Unicode 跳脫序列之格式為 u00ff
  for(var i=0; i < source.length; i++) {
     var num = new Number( source.charCodeAt(i));
     sret += "\u" + num.toString(16);
  }
  return sret;
}
function convert(){
    document.forms.content.result.value
        = StringToUniCode(document.forms.content.source.value);
}
//-->
</script>
將文字轉成 Unicode 跳脫序列
<form name=content>
來源:<input type=TEXT name=source size=40 value="常用連絡人"><br>
結果:<input type=TEXT name=result size=40><br>
<input type=button value=轉換 onclick="convert()">