No. : 804 Sender: msyk URL : Title : 文字参照 (was: Re:800)報告ですー。) >nkf にそんな機能ありましたっけ? > "B" encode の decode 私の使ってるヴァージョンにはあります, というよりかなり前からあるはずです. -m または -mB で B-encode, -mQ (-l も必要 ) で Q-encode をデコードできます. -m だけだと " の形式しかデコードできないようですが, -mB では添付ファイル等の base64 encode 部分だけを抜き出しておけばファイルの 復元も可能です. ただし Content-Type: application/octet-stream; name="..." Content-Disposition: inline; filename="..." なんてのは参照してくれない ( というより, これも余計なデータなので 削除しておかないと正しくデコードできない ) ので設定されているファイル名を リダイレクト時に指定しないとダメですが(^^;; どうも esemail のヘッダの連結操作が気に入らないのと, 文字コードを 間違えて送られてきたメイルが文字化けしないように, 文字コードを 確かめてから Shift_JIS に変換するため, メイルは送られてきたデータ そのままに esenet で受けることにしているのですが, そういった場合ヘッダ 部分に B-encode されたところがあっても簡単にメイル全体を変換できます. >>実体参照 (&#..;) に対する処理がブラウザによって異なるためだと思うのですが, この場合実体参照というのは間違いのようで, 数値文字参照 (Numeric Character Referernce) とでも訳せばいいのかな? >>"&", "&" とかを各ブラウザがどう処理するか見てみるとなかなか この場合は正確には文字実体参照 (Character Entity Reference) でしょうか? これら二つを総称して文字参照 (Character Reference) と呼ぶようです. >どこまで処理すればよいのかわからないです。(RFC 読んでないし(汗)) 文字参照を再展開するのが正しいかそうでないかとか, その他いろんなところで 議論されてたりするのを読んでも本当のところ何が正しいのかはっきりしません(^^; #RFC と HTML だけでなく SGML, XML あたりまで覗いてみたのですが... >もしかして 056 とかで8進数ってことはないですよね? これは W3C HTML 勧告の charset に関する章, 5.3 に記述されていますが, 数値文字参照は ISO 10646 での位置を 10 進数または 16 進数を用いて "&#....;", "&#x....;" で表すということです. #16 進数の場合は case-insensitive. ところで http://www.pc88.gr.jp/~teen/soft-index.html では文字実体参照の 最後の ";" を全く書いていないようですが, これについては SGML 的には 実体名と区別できる文字が続くなら省略できるということらしいので, HTML に おいても間違いではないのでしょうね. でも teen 対応各ブラウザで表示すると ";" がないために全滅なんですよね(^^;; ということで直した方が良くはないでしょうか? > Shinra さん