CANPAN ブログ検索
Loading
  • もっと見る
<< 2019年07月 >>
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
カテゴリアーカイブ
最新記事
最新コメント
utf-16からshift-jis変換(その2) [2012年07月01日(Sun)]
utf-16からshift-jis変換(その2)


 大事なことを書き忘れていました。

 本日(2012年7月1日)、「Komodic1207.zip」を変換しようとして、「á」が変換できませんでした。

 昔の方法が、思い出せなかったのですが、何とか「ATOK文字パレット」を使って、「á→00E1」を探し出しました。

 さらに、どこかのホームページを使用した気がしたので、ネット検索をやり直して、ついに発見しました。

日本語文字コード変換 mojimoji
http://www.yourname.jp/soft/mojimoji.shtml
 このホームページの右上の「日本語文字コード変換」を使います。

 テキスト欄に「á」を貼り付けると、UTF-16欄に「00e1」が表示されます。

 ですから「á→'a」と変換する秀丸マクロは、次のようになります。

begingroupundo;
replaceall "\u00e1" , "'a" , regular;
endgroupundo 1;

Posted by 山田 雄一郎 at 08:33
utf-16からshift-jis変換 [2010年07月08日(Thu)]
概要
 軍事用語(http://homepage3.nifty.com/OKOMO/)を、postgresqlデーターベースで表示するため、エクセルのVBAマクロで処理する。

詳細
 PDIC/unicodeで、 辞書変換機能を使用し、「PDIC1行テキスト形式」に変換する。
 エクセルのVBAマクロで、「PDIC1行テキスト形式」を、postgresqlデーターベースの入力用に変換する。

問題点
 軍事用語がutf-16で書かれているが、エクセルのVBAマクロはshift-jisで処理するため、utf-16からshift-jis変換しなければならない。

 utf-16からshift-jis変換時に、エラーとなる文字の一例は以下のとおり。
–㎥€

※ しかし、軍事用語の作者の意図する使い方では問題とならない。あくまで、作者の辞書を使用し私の意図する表示をする上での問題点であり、軍事用語の作者に改善を求める問題ではない。

解決策
 文字コード変換は、秀丸の以下のマクロを使用する。(変換後の文字は、あくまでも、私の好みである。)

>>>開始行(この行はマクロに含まない。)
setcompatiblemode 0x0F;
gofiletop;

begingroupundo;
replaceall "\u00E8" , "`e" , regular;
endgroupundo 1;

begingroupundo;
replaceall "m\u00B2" , "m2" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u2014" , "-" , regular;
endgroupundo 1;

begingroupundo;
replaceall "c\u33A5" , "cm3" , regular;
endgroupundo 1;

begingroupundo;
replaceall "m\u33A5" , "mm3" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u33A5" , "m3" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u2013" , "-" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u0101" , "'a" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u012B" , "'i" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u00F6" , "''o" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u2022" , "・" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u00F4" , "^o" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u6F7D" , "シ普" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u00E0" , "`a" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u5733" , "土川" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u00E9" , "'e" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u9830" , "頬" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u20AC" , "EUR " , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u2212" , "-" , regular;
if( ! result ) beep;
endgroupundo 1;

begingroupundo;
replaceall "\u7FCE" , "令羽" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u6414" , "掻" , regular;
endgroupundo 1;

begingroupundo;
replaceall "\u00EE" , "^i" , regular;
endgroupundo 1;
>>>終了行(この行はマクロに含まない。)
Posted by 山田 雄一郎 at 23:30
プロフィール

山田 雄一郎さんの画像
山田 雄一郎
プロフィール
ブログ
リンク集
http://blog.canpan.info/hofu_nanboku/index1_0.rdf
http://blog.canpan.info/hofu_nanboku/index2_0.xml