JavaScriptでnative2asciiとascii2native

Javaで設定ファイル中に日本語を記載するとき、asciiに変換しなくては
いけない場合があります。

通常は、native2asciiやascii2nativeを使って変換するのですが、
設定ファイルの一行だけ、何が書いてあるか確認したい。という時があったので、
JavaScriptでnative2asciiとascii2nativeを書いてみました。

※内容は結構適当です。


  1. <html>
  2. <head>
  3.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  4.     <title>JavaScriptでnative2ascii</title>
  5.     <script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
  6.     <script type="text/javascript">
  7.     $(function() {
  8.         
  9.         $("#n2a").click(function() {
  10.             
  11.             var raw = $("#in").val();
  12.             var result = "";
  13.             
  14.             while(true){
  15.                 if (raw.length == 0) break;
  16.                 var t = raw.substring(0,1);
  17.                 raw = raw.substring(1);
  18.                 var tmp = t.charCodeAt().toString(16);
  19.                 if (tmp.length >= 4) {
  20.                     result += "\\u" + tmp;
  21.                 } else {
  22.                     result += t;
  23.                 }
  24.             }
  25.             $("#out").val(result);
  26.         });
  27.         
  28.         $("#a2n").click(function() {
  29.             var raw = $("#in").val();
  30.             var result = "";
  31.             while(true) {
  32.                 if (raw.length == 0) break;
  33.                 var index = raw.indexOf("\\u");
  34.                 if (index == -1) {
  35.                     result += raw;
  36.                     break;
  37.                 }
  38.                 if (0 < index) {
  39.                     result += raw.substring(0, index);
  40.                 }
  41.                 if (index + 6 <= raw.length) {
  42.                     var tmp = parseInt(raw.substring(index + 2, index + 6), 16);
  43.                     result += String.fromCharCode(tmp);
  44.                     raw = raw.substring(index + 6);
  45.                 } else {
  46.                     break;
  47.                 }
  48.             }
  49.             $("#out").val(result);
  50.         });
  51.     });
  52.     </script>
  53. </head>
  54. <body>
  55.     <h3>JavaScriptでnative2ascii</h3>
  56.     変換対象<br/>
  57.     <textarea id="in" style="width:400px;height:50px;"></textarea><br/>
  58.     <input type="button" id="n2a" value="native2ascii">
  59.     <input type="button" id="a2n" value="ascii2native"><br />
  60.     変換結果<br/>
  61.     <textarea id="out" style="width:400px;height:50px;"></textarea><br/>        
  62. </body>
  63. </html>




動くサンプルはこちら。
JavaScriptでnative2ascii



native2ascii実行

02_001_20120428093210.png


ascii2native実行

02_002_20120428093209.png



関連記事

コメント

非公開コメント

プロフィール

Author:symfo
blog形式だと探しにくいので、まとめサイト作成中です。
Symfoware まとめ

PR




検索フォーム

月別アーカイブ