Namazu-users-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

自己解決( Re: 質問タグ終了記号直前に NUL(0x00) が付加されている場合の対処法)



西原です。その後デバッガを起動して色々見ていたんですが、
どうやら、

NISHIHARA Yoshiaki wrote:
> <BODY BGCOLOR="#ffffff" LINK="#0000ff" ALINK="#ff0000" VLINK="#ff00ff" >
> 
> 上のタグで、要素間にはスペース(0x20)が挿入されているのですが、
> VLINK="#ff00ff"とタグ終了記号の間にだけNUL(0x00)が挿入されて
> いるのです。

この状態で、codeconv::toeuc()にソースのHTMLファイル(MS漢字コードの
ファイルです)を渡してやると、NKFでEUCに変換した際に、NULL以降文字の
切り捨てが発生しているようです。

というわけで、mknmzの sub codeconv_document()内、

>    codeconv::toeuc($textref);
の直前に
    $$textref =~ s/(<BODY[^\x00]+)\x00/$1/g;
と1行足したところ、うまくいきました。(あんまりかっこよくないです
けど)

お騒がせしました。とりあえず自己解決したということで報告させて
いただきます。
 
**************
西原 良昭
nisihara@xxxxxxxxxxxxx