VB.NETで、ファイルから読み込んだ数行の日本語テキスト(かな、漢字、数字、記号が混在)の漢字の部分をひらがなに自動変換してテキストボックスに表示したいのですが、どなたかよい方法をご存じであれば教えてください。
正しくかな変換できることが望ましいのですが、人間の判断を介さずに一気に変換したいので、ある程度の誤変換は覚悟しています。
ImmGetConversionListなんかを使うのかなと、いろいろ調べていますが、素人なものでよく分かりません。似たような処理をするサンプルコードがあると助かります。
よろしくお願いいたします。
基本的に ImmGetConversionList を使うことになるでしょう。
サンプルはぐぐればいくらでも出てきたので省略。
問題点は、
・長すぎる文だと変換してくれない可能性がある
・IME によって挙動が違う
・ウィンドウが存在しない場合(コンソールアプリとか ASP.NET とか)は無理っぽい
辺りですかねー。
Hongliangさん、早速回答いただきありがとうございます。
ちょっとネットで探したところ、ぴったりのVBサンプルは見つけられなかったんですが、も一度探してみます。
3つ目の問題点はクリアできると思います。第1と第2は、プログラムが動作するようになったらいろいろ試してみたいと思います。
chasen.dllというものがあります。
サンプルもあったかとおもいます。
.NETのはあったかは知りません。
'http://homepage3.nifty.com/hippo2000/ComCha/ComCha.htm
うーん…形態素解析は必要…ううーん必要なのかな…?
ImmGetConversionListは動作がどうも不安定な感じです。
特にXpでは動かないこと多いように感じます。(IMEによる)
KAKASIやMeCabの利用が一番簡単だと思います。
以前,ふりがなを振るブラウザを作ったときに調べたことをWebページに
まとめましたので参考にしてください。
http://homepage1.nifty.com/yasunari/VB/VB2005/MeCab.htm
http://homepage1.nifty.com/yasunari/VB/VB2005/KAKASI.htm
ツイート | ![]() |