1 |
wakaba |
1.1 |
<?xml version="1.0" encoding="iso-2022-jp"?> |
2 |
|
|
<?xml-stylesheet href="/s/simpledoc.css" type="text/css" ?> |
3 |
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" |
4 |
|
|
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> |
5 |
|
|
<html xml:lang="ja" xmlns="http://www.w3.org/1999/xhtml"> |
6 |
|
|
<head> |
7 |
|
|
<title xml:lang="en">Message::* Perl modules $B$NJ8;z%3!<%I$N07$$(B</title> |
8 |
|
|
<link rel="index" href="./" /> |
9 |
|
|
<link rel="prev" href="introduction" title="Message::* Perl Modules $B$N>R2p(B" /> |
10 |
|
|
<link rel="stylesheet" href="/s/simpledoc.css" type="text/css" /> |
11 |
|
|
<link rev="made" href="mailto:w@suika.fam.cx" /> |
12 |
|
|
<link rel="copyright" href="/c/pd" title="Public Domain." /> |
13 |
|
|
<meta name="author" content="$B<cMU(B" /> |
14 |
|
|
<meta name="keywords" content="Perl, module, pm, Message, $BJ8;z%3!<%I(B, $B%U%C%/4X?t(B, charset, $BId9f2=J8;z=89g(B, $BJ8;zId9f2=J}<0(B, CCS, CES" /> |
15 |
|
|
</head> |
16 |
|
|
<body> |
17 |
|
|
<h1><a href="introduction">Message::* Perl modules</a> $B$NJ8;z%3!<%I$N07$$(B</h1> |
18 |
|
|
|
19 |
|
|
<ul> |
20 |
|
|
<li><a href="#ja">$B<j$C<h$jAa$/F|K\8l$,;H$($k$h$&$K$9$kJ}K!(B</a></li> |
21 |
|
|
<li><a href="#hook">$B%U%C%/4X?t$C$]$$$b$N$N@bL@(B</a></li> |
22 |
wakaba |
1.2 |
<li><a href="#implemention">$BFbIt<BAu$K$D$$$F$N3P=q(B</a></li> |
23 |
wakaba |
1.1 |
<li><a href="#future">$B>-Mh7W2h(B</a></li> |
24 |
|
|
</ul> |
25 |
|
|
|
26 |
|
|
<h2 id="ja">$B<j$C<h$jAa$/F|K\8l$,;H$($k$h$&$K$9$kJ}K!(B</h2> |
27 |
|
|
|
28 |
|
|
<p>$BF|K\8lJ8;z%3!<%IJQ49$KNI$/;H$o$l$k!"(B |
29 |
|
|
<a href="http://srekcah.org/jcode/">jcode.pl</a> $B$d(B |
30 |
|
|
<a href="http://openlab.ring.gr.jp/Jcode/">Jcode.pm</a>, |
31 |
|
|
<a href="http://bw-www.ie.u-ryukyu.ac.jp/~kono/software.html">NKF.pm</a> |
32 |
|
|
$B$J$I$r;H$&$?$a$NDj5A%b%8%e!<%k$rMQ0U$7$F$$$^$9!#$3$l$r<!$NNc$N$h$&$K(B |
33 |
|
|
<code>use</code> $B$9$k$@$1$G;H$($^$9!#(B</p> |
34 |
|
|
|
35 |
|
|
<pre class="example perl"> |
36 |
|
|
<span class="comment">## $B$I$A$i$+9%$-$JJ}$r$I$&$>!#(B</span> |
37 |
|
|
use Message::MIME::Charset::Jcode 'Jcode'; ## 'Jcode.pm' $B$H=q$$$F$bNI$$!#(B |
38 |
|
|
use Message::MIME::Charset::Jcode 'jcode.pl'; |
39 |
|
|
</pre> |
40 |
|
|
|
41 |
|
|
<p>jcode.pl $B$d(B Jcode.pm $B$J$I$O!"<+F0E*$K(B |
42 |
|
|
<code>require</code>/<code>use</code> $B$5$l$^$9!#(B</p> |
43 |
|
|
|
44 |
|
|
<p>$B$A$J$_$K!"J#?t2s(B Message::MIME::Charset::Jcode |
45 |
|
|
$B$rFI$_9~$s$@>l9g$K$O:G8e$NDj5A$,M-8z$K$J$j$^$9!#$^$?!"(B |
46 |
|
|
($BEvA3$H$$$($PEvA3$G$9$,(B) $B$=$N%b%8%e!<%k$GMxMQ2DG=$J(B charset |
47 |
|
|
$B$N$_Dj5A$5$l$^$9!#$G$9$+$i!">e$NNc$NDL$j$N=gHV$G=q$$$F$*$/$3$H$G!"(B |
48 |
|
|
<code class="mime-charset">UTF-8</code> $B$O(B Jcode.pm $B$G!"$=$l0J30$N>l9g$O(B |
49 |
|
|
jcode.pl $B$GJQ49$,9T$o$l$^$9!#(B</p> |
50 |
|
|
|
51 |
|
|
<p>$B$J$*!"FbItJ8;z%3!<%I(B ($B%a%=%C%I$J$I$GCM$r<h$j=P$7$?;~$NId9f2=J}<0(B) |
52 |
|
|
$B$O!"JQ49%b%8%e!<%k$NFbIt%3!<%I$^$?$OF|K\8l(B EUC $B$K$J$j$^$9!#(B |
53 |
|
|
(jcode.pl $B$d(B Jcode.pm $B$G$OF|K\8l(B EUC $B$G$9!#(B) $B$3$l$rJQ99$9$k$K$O!"(B |
54 |
|
|
<code>$Message::MIME::Charset::Jcode::CODE{internal}</code> |
55 |
|
|
$B$r(B <code>'sjis'</code> $B$d(B <code>'jis'</code> (7$B%S%C%H(B ISO/IEC 2022) |
56 |
|
|
$B$J$I$K$7$F2<$5$$!#(B</p> |
57 |
|
|
|
58 |
|
|
<h2 id="hook">Charset $B$NDj5A(B</h2> |
59 |
|
|
|
60 |
|
|
<p>$B4{Dj$N>uBV$G$O!"K\J8$d(B <code class="bnf rfc822">quoted-string</code> |
61 |
|
|
$B$J$I$NItJ,$K$D$$$F!"J8;z%3!<%I$K4X78$9$kJQ49=hM}$O9T$o$l$^$;$s!#(B |
62 |
|
|
Perl $B$N%U%!%$%kF~=PNO$J$I$,$=$&$G$"$k$h$&$K!"C1$J$k(B8$B%S%C%H$N%*%/%F%C%HNs$H$7$F07$$$^$9!#(B</p> |
63 |
|
|
|
64 |
|
|
<p>$BJ8;z%3!<%I$NJQ49=hM}(B ($B%a%C%;!<%8$NId9f2=J8;z=89g$+$i(B |
65 |
|
|
script $BFbIt$NId9f2=J8;z=89g$X$NJQ49$H!"$=$N5U(B) |
66 |
|
|
$B$rDj5A$9$k$K$O!"(B |
67 |
|
|
<code class="perl">Message::MIME::Charset::make_charset</code> |
68 |
|
|
$B$r;H$$$^$9!#MxMQNc$O(B Message::MIME::Charset::Jcode |
69 |
|
|
$B$r8+$F2<$5$$!#(B</p> |
70 |
|
|
|
71 |
|
|
<p><code class="perl">*default</code> $B$OFCJL$J(B charset |
72 |
|
|
$B$G!"(B MIME $B$J$I$G(B charset $B$,;XDj$5$l$F$$$J$$!"(B |
73 |
|
|
<code class="bnf rfc822">quoted-string</code> |
74 |
|
|
$B$NJQ49=hM}$rDj5A$7$^$9!#(B ($B$J$*!"0lHL$K(B charset $BL>$O!"(B |
75 |
|
|
Message::* $B3F%b%8%e!<%k$G$O>.J8;z$K@55,2=$7$?>uBV$G=hM}$7$^$9$+$i!"$3$&$7$?(B |
76 |
|
|
charset $BDj5A$O>.J8;z$G9T$$$^$9!#(B)</p> |
77 |
|
|
|
78 |
|
|
<p>$B$3$N(B charset |
79 |
|
|
$BDj5A$O!"EvA3!"Ev3:=hM}$,8F$S=P$5$l$kA0$K9T$C$F$*$/I,MW$,$"$j$^$9!#(B |
80 |
|
|
<samp class="perl">Message::Entity->parse</samp> $B$J$I$9$kA0$K(B |
81 |
|
|
$BDj5A$7$F$*$/$HNI$$$G$7$g$&!#(B</p> |
82 |
|
|
|
83 |
|
|
<p>Charset $BDj5A$N(B name_minimumizer $BB0@-$O!"L>A0:G>.2=$N4X?t$r;XDj$7$^$9!#(B |
84 |
|
|
MIME $B$K$h$k$H(B charset $BL>$O!";HMQ$5$l$F$$$kJ8;z$NHO0O$N:G>.8xG\?tE*$J$b$N$K$9$kI,MW$,$"$j$^$9!#(B |
85 |
|
|
($BNc$($P!"4pK\%i%F%sJ8;z$N$_$+$i$J$k(B |
86 |
|
|
<code class="mime-charset">ISO-2022-JP</code> $B$O!"L>A0$r:G>.2=$7$F(B |
87 |
|
|
<code class="mime-charset">US-ASCII</code> $B$H$7$J$1$l$P$J$j$^$;$s!#(B)</p> |
88 |
|
|
|
89 |
|
|
<p>$B$J$*!"(B |
90 |
|
|
<code class="mime-charset">ISO-2022-JP</code> $B$J$I4v$D$+$N(B charset |
91 |
|
|
$BMQ$K$O(B Message::MIME::Charset $B$GAH$_9~$_Dj5A$5$l$F$$$^$9$N$G!"2~$a$F;XDj$9$kI,MW$O$"$j$^$;$s!#(B</p> |
92 |
|
|
|
93 |
wakaba |
1.2 |
<h2 id="implemention">$BFbIt<BAu$K$D$$$F$N3P=q(B</h2> |
94 |
|
|
|
95 |
|
|
<p>$BJ8;z2s$j$O<BAu$7$?K\?M$9$i2?$,$J$s$@$+NI$/$o$+$j$^$;$s!#(B |
96 |
|
|
$B85!9?'!9$J;EMM$d47=,$,F~$j:.$8$C$F$kItJ,$J$N$G!"e:No$J<BAu$OIT2DG=$+$b$7$l$^$;$s!#(B</p> |
97 |
|
|
|
98 |
|
|
<p><code class="perl">encoding_before_decode</code> |
99 |
|
|
$B$OI|9fA0(B ($B$N@8%a%C%;!<%8(B) $B$N(B charset, |
100 |
|
|
<code class="perl">encoding_after_encode</code> |
101 |
|
|
$B$OId9f2=8e(B ($B$N@8%a%C%;!<%8(B) $B$K(B charset$B!#DL>o$OF1$8CM$K$7$^$9$,!"(B |
102 |
|
|
EUC-JP ($B5<;w(B) RFC 822 $B$+$i(B ISO-2022-JP RFC 822 |
103 |
|
|
$B$KJQ49$9$k$h$&$J;~$K;H$($^$9(B ($B$+$b(B)$B!#(B ($B$G$b(B *default charset |
104 |
|
|
$B$NJQ49=hM}B&$G:Y9)$7$?J}$,3Z!#(B)</p> |
105 |
|
|
|
106 |
|
|
<p>$BN>(B encoding_* option $B$K$O!"(B *default ($B5<;w(B) charset |
107 |
|
|
$B$r;XDj$G$-$^$9!#$[$H$s$I$N(B module $B$G$O$3$l$,4{DjCM$G$9!#(B |
108 |
|
|
HTTP $B$K;H$&$H$-$O$3$l$r(B ISO-8859-1 $B$KJQ$($?$j$7$^$9!#(B</p> |
109 |
|
|
|
110 |
|
|
<p><code class="perl">header_default_charset</code>, |
111 |
|
|
<code class="perl">body_default_charset</code> |
112 |
|
|
$B$O!"(B *default ($B5<;w(B) charset $B$N(B IANA charset $BL>!#(B |
113 |
|
|
$B0EL[;XDj(B charset $B$rL@<($9$kI,MW$,=P$?;~(B (Content-Type: $BNN0h$NIUM?(B, |
114 |
|
|
RFC 2231 $BId9f2=$J$I$N;~(B) $B$K;H$o$l$^$9!#(B</p> |
115 |
|
|
|
116 |
|
|
<p>*default charset $B$O(B charset $BL>;%$,$J$$J8;zNs$K2>Dj$5$l$^$9!#(B |
117 |
|
|
$BG^BN7?$N(B charset $B%Q%i%a!<%?!<$d(B encoded-word $B$d(B RFC 2231 |
118 |
|
|
$B$G(B charset $BL>$,L@<($5$l$F$$$k;~$K$O!"$=$A$i$N(B charset |
119 |
|
|
$BL>$,;H$o$l$^$9!#(B</p> |
120 |
|
|
|
121 |
|
|
<p><code class="perl">header_default_charset_input</code>, |
122 |
|
|
<code class="perl">body_default_charset_input</code> |
123 |
|
|
$B$O!"(B <code class="perl">encoding_before_decode</code> |
124 |
|
|
$B$NCM$,(B *default $B$N;~$N!"$=$N(B IANA charset $BL>$r;XDj$7$^$9!#(B |
125 |
|
|
$BDL>o$OFI$_9~$_;~$KFbItJ8;z=89g$KJQ49$7$^$9$,!"$3$N(B |
126 |
|
|
input charset $B$+$iFbItJ8;z=89g$KJQ49=PMh$J$$>l9g!"(B |
127 |
|
|
$B$=$N$^$^L5JQ49$GJ];}$7$^$9!#$3$l$r=PNO$9$k>l9g$G(B charset |
128 |
|
|
$BL>$,I,MW$K$J$C$?;~$K!"(B ($BK\Mh$J$i(B |
129 |
|
|
<code class="perl">encoding_after_encode</code> $B$r;H$$!"$=$NCM$,(B |
130 |
|
|
*default $B$N;~$O99$K(B *_default_charset $B$NCM$r;H$&$N$G$9$,!"(B |
131 |
|
|
$BJQ49ITG=$J(B charset $B$+$i$=$l$X$OJQ49=PMh$J$$$N$G!"(B) |
132 |
|
|
input charset $B$r$=$N$^$^=PNO$7!"$3$NL>A0$r;H$$$^$9!#(B</p> |
133 |
|
|
|
134 |
wakaba |
1.1 |
<h2 id="future">$B>-Mh7W2h(B</h2> |
135 |
|
|
|
136 |
|
|
<ul> |
137 |
|
|
<li>Perl 5.8 $BBP1~(B |
138 |
|
|
<ul> |
139 |
|
|
<li>UTF-8 $B4z$,IU$$$?J8;zNs$r@5$7$/07$($k$h$&$K$9$k!#(B</li> |
140 |
|
|
<li>Encode $B%b%8%e!<%kMQ$NDj5A%b%8%e!<%k$N:n@.!#(B</li> |
141 |
|
|
</ul> |
142 |
|
|
</li> |
143 |
wakaba |
1.2 |
<li>IANA $BDj5A$KH?$9$k(B charset $BL>;HMQ$X$NBP=h(B |
144 |
|
|
<ul> |
145 |
|
|
<li>$B%a%C%;!<%8$,(B M$ $B@=IJ$+$iAw?.$5$l$?$b$N$HH=CG=PMh$k>l9g$K!"(B |
146 |
|
|
charset $BL>$N2r<a$r0lItJQ99$9$k!#(B</li> |
147 |
|
|
</ul> |
148 |
|
|
</li> |
149 |
|
|
<li>encoded-word $BId9f2=$X$NBP1~(B |
150 |
|
|
<p>encoded-word $B$O7y$$$G$9$,!"I,MW$K$J$k>lLL$,$"$k0J>e!"$$$:$l<BAu$7$^$9!#$@$1$IM%@h=g0L$ODc$a!#(B</p> |
151 |
|
|
</li> |
152 |
wakaba |
1.1 |
</ul> |
153 |
|
|
|
154 |
|
|
<div class="navigation"> |
155 |
|
|
[<a href="/" title="$B$3$N%5!<%P!<$N<sJG(B">/</a> |
156 |
|
|
<a href="/map" title="$B$3$N%5!<%P!<$N0FFb(B" rel="index">$BCO?^(B</a> |
157 |
|
|
<a href="/search/" title="$B$3$N%5!<%P!<$N8!:w(B">$B8!:w(B</a>] |
158 |
|
|
|
159 |
|
|
[<a href="introduction" title="Message::* Perl Modules $B$N>R2p(B">$B>R2p(B</a>] |
160 |
|
|
|
161 |
|
|
<a href="http://validator.w3.org/check/referer" xml:lang="en"><img |
162 |
|
|
src="http://www.w3.org/Icons/valid-xhtml11" id="w3c-html" |
163 |
|
|
alt="Valid XHTML 1.1!" style="height: 31px; width: 88px" /></a> |
164 |
|
|
<a href="http://jigsaw.w3.org/css-validator/validator?uri=http://suika.fam.cx/~wakaba/Message-pm/charset.ja.html" xml:lang="en"> |
165 |
|
|
<img style="width: 88px; height: 31px" id="w3c-css" |
166 |
|
|
src="http://jigsaw.w3.org/css-validator/images/vcss" |
167 |
|
|
alt="Valid CSS!" /></a> |
168 |
|
|
</div> |
169 |
wakaba |
1.2 |
<div class="update">$Date: 2002/07/13 11:51:56 $</div> |
170 |
wakaba |
1.1 |
<ul class="myuri"> |
171 |
|
|
<li><URL:<a href="http://suika.fam.cx/~wakaba/Message-pm/introduction">http://suika.fam.cx/~wakaba/Message-pm/introduction</a>></li> |
172 |
|
|
<li><CVS:<a href="http://suika.fam.cx/gate/cvs/perl/web/Message-pm/">suika.fam.cx:/home/cvs/perl/web/Message-pm/</a>></li> |
173 |
|
|
</ul> |
174 |
|
|
</body></html> |