Open() and encodings

e$B@.@%$G$9!#e(B

Tatsuki S. wrote:

sargee$B0JA0$+$ie(Bdist-upgradee$B$7$?4D6-$@$He(B/etc/default/localee$B$,$J$/$Fe(B
e$BA4Ite(B UTF-8 e$BA0Ds$GF0$$$F$$$kMM$G$9!#e(BUTF-8 e$B$H$7$FIT@5$J$b$N$Oe(B locale e$B$Ne(B
e$B%(%s%3!<%G%#%s%0$r;H$C$F@5$7$/I=<($7$F$/$l$^$9$,!"e(Bnautilus e$B$G0lC6e(B
e$B%j%M!<%`$9$k$He(B(e$B4pK\E*$Ke(B)e$B>!<j$Ke(B UTF-8 e$B$KB7$($F$7$^$$$^$9!#e(B

http://www.gnome.gr.jp/docs/glib-2.8.x-refs/glib/glib-Character-Set-Conversion.html

e$B8D?ME*$K$O$3$3$Oe(B ruby e$BK\BN$G<jEv$9$kNN0h$G$O$J$$$H46$8$^$9!#e(B

e$B$U!<$!"$^$@$^$@0lDj%l%Y%k$G?.Mj$G$-$k%U%!%$%k%7%9%F%$N%(%s%3!<%G%#%s%0$,e(B
e$B<hF@$G$-$k$h$&$J>uBV$G$O$J$$$N$G$9$M!#e(B
e$B>pJs$"$j$,$H$&$4$6$$$^$7$?!#e(B

e$B@.@%$G$9!#e(B

Hidetoshi NAGAI wrote:

e$B$=$N$h$&$J%1!<%9$G$O$I$N$$A$I$3$+$GJQ49$7$?$G$"$m$&$O$:$G!"e(B
e$B!V$J$i$P!“FI$a$k$b$N$O3Z$KFI$a$?J}$,$$$$$G$”$m$&$H!#!W$C$F!$e(B
e$B!V5
:Q$G$-$=$&$J$b$N$O5_:Q$7$F$"$2$?$$!W$HF1N`$NH/A[$G$O$J$$$G$7$g$&$+!)e(B
e$B$I$A$i$+$H8@$($P!$;d$N;~$h$j$b$5$i$K!X0-!Y$N$h$&$K;W$($^$9!%e(B

e$BJL$K:,$K;}$C$F8@$C$F$$$k$o$1$G$O$J$$$N$G!$8m2r$5$l$^$;$L$h$&!%e(B

e$B$o$?$7$b<+F0JQ49$,!X0-!Y>5CN$7$F$$$^$7$F!"$G$-$l$PHr$1$?$$$N$G$9$,!"e(B
e$B%U%!%$%k%7%9%F%`$K4X$7$F$Oe(B Windows e$B$N>l9ge(B OS
e$B$,<+F0JQ49$rDs6!$7$F$$$k$N$G!"e(B
Ruby
e$BB&$G$b$=$l$HB=?’$N$J$$%l%Y%k$N%5%]!<%H$rDs6!$7$?J}$,$h$$$N$G$O$J$$$+!"e(B
e$B$H;W$$;j$j$^$7$?!#e(B

e$B$"$H$"$N>l9g$H0[$J$k$N$O!“Nc$($P!V$”$$$&$($*e(B.txte$B!W$H$$$&%U%!%$%k$r:n@.$7$?$$>l9g!“e(B
e$B$I$N$h$&$J%P%$%HNs$re(Bopen()
e$B$KEO$;$P$$$$$+!”$H$$$&LdBj$KBP$7$F!“e(B
e$BEz$($rM?$($i$l$k$H8@$&$3$H$,$”$j$^$9!#e(B
e$B8@$$49$($k$H!"4D6-Hs0MB8$K$9$k$?$a$NI,MW0-$J$N$+$J$!$H!#e(B

e$B4D6-0MB8$N%3!<%I$r5v$9$?$a$N!X0-!Y$H$O0[$J$k$He(B

open(“e$B$”$$$&$($*e(B.txt".encode(Encoding.filesystem_encoding)){ … }

e$B$H$$$&%3!<%I$r3’$,915WE*$K=q$$$F$/$l$k$J$i$PL@<(E*$K;XDj$5$;$k$N$b$$$$$N$G$9$,!"e(B
e$B$3$l$r5v$5$J$$$H5U$KJQ49$r%5%$k4D6-0MB8$J%3!<%I$@$i$1$K$J$k$s$@$m$&$J$!$H$$$&G:$_$,!#e(B

open e$BEy$G<+F0JQ49$h$j$b$$$$J}K!$,$"$l$P$$$$$N$G$9$,!#e(B

À®À¥¤Ç¤¹¡£

Yukihiro M. wrote:

  • external_encoding, internal_encoding¤Ç¤¹¤¬¡¢²þ¤á¤Æ¹Í¤¨¤Æ¤ß
    ¤ë¤È¡¢¤³¤ì¤À¤È¸½¾õ¤Ç¤Ï¤Ç¤­¤Ê¤¤external_encoding¤ò»ØÄꤻ¤º¤Ë
    internal_encoding¤ò»ØÄꤹ¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¤è¤Í¡£¸¡¾Ú¤·¤Æ¤¤¤Ê
    ¤¤¤ó¤Ç¤¹¤¬¡¢¤Û¤«¤Î¾ì½ê¤Ç¤½¤Î¤è¤¦¤ÊÁȤ߹ç¤ï¤»¤òÁÛÄꤷ¤Æ¤¤¤Ê
    ¤¤¤ó¤Ç¡¢¤Á¤ã¤ó¤ÈÆ°¤«¤Ê¤¤¤è¤¦¤Ê¡£¤¿¤Ö¤ó¡¢internal_encoding
    ¤À¤±¤¬»ØÄꤵ¤ì¤¿»þ¤Ë¤Ï¥¨¥é¡¼¤Ë¤Ê¤ë¤Ù¤­¤Ê¤ó¤À¤È»×¤¤¤Þ¤¹¡£¾¯
    ¤Ê¤¯¤È¤â¥Õ¥¡¥¤¥ë¤ÎÃæ¿È¤Ë´Ø¤·¤Æ¤Ï¡£

    ¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Ø¤·¤Æ¤Ï¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤¬
    ·è¤Þ¤Ã¤Æ¤¤¤ëOS¤Ç¤ÏÌäÂꤢ¤ê¤Þ¤»¤ó¤¬¡¢·è¤Þ¤é¤Ê¤¤OS(UNIX·Ï)¤Ç
    ¤Ï¤ä¤Ï¤ê¥¨¥é¡¼¤Ë¤Ê¤ë¤Ù¤­¤Ç¤Ï¤Ê¤¤¤«¤È¡£

³Î¤«¤Ë¤½¤¦¤Ç¤¹¤Í¡£
external_encoding ¤¬Ì¤»ØÄê¤Ê¤Î¤Ë internal_encoding ¤¬Í¿¤¨¤é¤ì¤¿¾ì¹ç¤Ï¡¢
̵»ë¤»¤º¤ËÎã³°¤òÅꤲ¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£

¤È¤ê¤¢¤¨¤º io.c ¤Ë¤Ä¤¤¤Æ¤Î¥Ñ¥Ã¥Á¤ò²þ¤á¤ÆÄ󼨤¹¤ë¤³¤È¤Ë¤·¤Þ¤¹¡£

e$B@.@%$G$9!#e(B

Takahiro K. wrote:

In message [email protected]
on Thu, 5 Jun 2008 23:35:23 +0900,
“NARUSE, Yui” [email protected] wrote:

Mac OS X e$B$Oe(B UTF8-MAC e$B$G$9$+$iB?J,$"$C$?$[$&$,$$$$$H;W$&$N$G$9$,!"e(B
Bootcampe$B$G:n$C$?e(BWindowse$B$Ne(BFAT32e$B$J%Q!<%F%#%7%g%s!"e(BUSBe$B%a%b%j$rA^$7$?e(BFAT32
e$B$J%U%!%$%k%7%9%F%`$b$=$&$J$s$G$7$g$&$+e(B?

e$B$&!<$s!"$I$&$J$s$G$7$g$&!#e(B
e$B<B:]$Ke(B Mac OS X e$B$+$i%U%!%$%k$r:n$k;~$Oe(B composed UTF-8
e$B$G;XDj$7$F!“e(B
e$B%7%9%F%`$NJ,2r$KG$$;$?J}$,$$$$$N$+$b$H$$$&7|G0$O$”$C$?$j$7$^$9!#e(B

e$B<B:]$K;H$C$F$$$k?M$N0U8+$bM_$7$$=j!#e(B
e$B$I$J$?$+$$$i$C$7$c$$$^$;$s$+$M!#e(B
e$B;~4V$,$“$C$?$i2q<R$G;n$7$F$_$^$7$g$&!”$C$F2?$r$I$&%A%'%C%/$9$l$PNI$$$se(B
e$B$+$Je(B?

MacOSXe$B4D6-$K$*$$$F!“e(B
1.composed UTF-8 e$B$J%U%!%$%kL>$N%U%!%$%k$N$_B8:_e(B
2.decomposed UTF-8 e$B$J%U%!%$%kL>$N%U%!%$%k$N$_B8:_e(B
3.e$BN>J}B8:_e(B
e$B$N>l9g$K!“e(B
a.composed UTF-8 e$B$J%Q%9$G%”%/%;%9e(B
b.decomposed UTF-8 e$B$J%Q%9$G%”%/%;%9e(B
e$B$G$9$+$M!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:34961] Re: open() and encodings”
on Fri, 6 Jun 2008 08:05:56 +0900, “NARUSE, Yui” [email protected]
writes:

|e$B$o$?$7$b<+F0JQ49$,!X0-!Y>5CN$7$F$$$^$7$F!"$G$-$l$PHr$1$?$$$N$G$9$,!"e(B
|e$B%U%!%$%k%7%9%F%`$K4X$7$F$Oe(B Windows e$B$N>l9ge(B OS e$B$,<+F0JQ49$rDs6!$7$F$$$k$N$G!"e(B
|Ruby e$BB&$G$b$=$l$HB=?'$N$J$$%l%Y%k$N%5%]!<%H$rDs6!$7$?J}$,$h$$$N$G$O$J$$$+!"e(B
|e$B$H;W$$;j$j$^$7$?!#e(B

Windowse$B$G$N<+F0JQ49$,$I$N$h$&$J$b$N$+CN$i$J$$$N$Ge(B(e$BL5CN$G$4$ae(B
e$B$s$J$5$$e(B)e$B$J$s$H$b8@$($J$$$s$G$9$,!“$J$s$H$J$/e(BWindowse$B$G$J$$e(BOS
e$B$G$O<B8=$9$k$3$H$,Fq$7$$e(B(or
e$BIT2DG=$Je(B)e$B88A[$G$”$k$h$&$J5$$,$7e(B
e$B$^$9!#e(B

|e$B$“$H$”$N>l9g$H0[$J$k$N$O!“Nc$($P!V$”$$$&$($*e(B.txte$B!W$H$$$&%U%!%$%k$r:n@.$7$?$$>l9g!“e(B
|e$B$I$N$h$&$J%P%$%HNs$re(Bopen() e$B$KEO$;$P$$$$$+!”$H$$$&LdBj$KBP$7$F!“e(B
|e$BEz$($rM?$($i$l$k$H8@$&$3$H$,$”$j$^$9!#e(B
|e$B8@$$49$($k$H!"4D6-Hs0MB8$K$9$k$?$a$NI,MW0-$J$N$+$J$!$H!#e(B
|# e$B4D6-0MB8$N%3!<%I$r5v$9$?$a$N!X0-!Y$H$O0[$J$k$He(B

e$B$&!<$s!"$=$l$O!V%U%!%$%k%7%9%F%$N%(%s%3!<%G%#%s%0!W$H$$$&$be(B e$B$N$,B8:_$9$l$P$H$$$&2>Dj$,$"$j$^$9$h$M!#$=$b$=$b!"4D6-Hs0MB8e(B e$B$G%^%k%A%P%$%HJ8;z$r4^$%U%!%$%kL>$rA`:n$9$kJ}K!$C$FB8:$7$^e(B
e$B$7$?$C$1!#B8:
$7$J$$$b$N$r8@8l$,Ds6!$9$k$N$O2aJ,$@$H;W$$$^$9!#e(B

|open(“e$B$”$$$&$($e(B.txt".encode(Encoding.filesystem_encoding)){ … }
|
|e$B$H$$$&%3!<%I$r3’$,915WE
$K=q$$$F$/$l$k$J$i$PL@<(E*$K;XDj$5$;$k$N$b$$$$$N$G$9$,!“e(B
|e$B$3$l$r5v$5$J$$$H5U$KJQ49$r%5%$k4D6-0MB8$J%3!<%I$@$i$1$K$J$k$s$@$m$&$J$!$H$$$&G:$_$,!#e(B
|
|open e$BEy$G<+F0JQ49$h$j$b$$$$J}K!$,$”$l$P$$$$$N$G$9$,!#e(B

e$B%U%!%$%k%7%9%F%`$N%(%s%3!<%G%#%s%0$,8GDj$G$“$ke(BOSe$B$G$O!”<+F0JQe(B
e$B49$9$k$3$H$b%“%j$G$7$g$&$1$I!”$=$&$G$J$$e(BOSe$B$G$OJQ49$7$F$O$$$1e(B
e$B$J$$$N$@$H;W$$$^$9!#e(B

e$B$=$&9M$($k$He(B

= Dir (e$B%U%!%$%k%7%9%F%`$+$i$NFI$_9~$_e(B)

Windows: UTF-16LE e$B"*e(B UTF-8e$B$KJQ49e(B(e$B%?%0IU$1e(B)
OS X: UTF8-MAC e$B"*e(B UTF-8(or UTF8-MAC)e$B%?%0IU$1e(B)
UNIXe$B7Oe(B: NULe$B$r4^$^$J$$J8;zNse(B e$B"*e(B
localee$B$K$7$?$,$$%?%0IU$1e(B

= Open (e$B%U%!%$%k%7%9%F%`$X$N;XDje(B)

Windows: UTF-16LEe$B$KJQ49e(B
e$BJQ49$H8@$C$F$b!"e(B7BITe$B$^$?$Oe(BUnicodee$B$G$J$1$l$P%(%i!<e(B
UTF-8e$B$r5!3#E*$Ke(BUTF-16e$B$KJQ49$9$kDxEYe(B
OS X: UTF-8e$B%A%‘%C%/e(B
UNIXe$B7Oe(B:
e$B%P%$%HI=8=$r$=$N$^$^;H$&e(B(e$B%(%s%3!<%G%#%s%0$OL5;ke(B)
asciicompat(or
NULe$B$r4^$^$J$$$+$I$&$+e(B)e$B%A%’%C%/$OI,MW$+e(B

e$B$/$i$$$,E,Ev$G$O$J$$$+$H;W$$$^$9!#$I$&$G$7$g$&!)e(B

                            e$B$^$D$b$He(B e$B$f$-$R$me(B /:|)

e$B$3$s$K$A$O!"$J$+$`$ie(B(e$B$&e(B)e$B$G$9!#e(B

In message “[ruby-dev:34959] Re: open() and encodings”
on Jun.06,2008 04:59:27, [email protected] wrote:

e$B$^$k$C$-$jJ,$+$C$F$$$J$$$N$G!$e(B
e$B!V$=$&$$$&$b$N$J$N$+$J!)!W$H$7$+8@$($^$;$s!%e(B(^_^;
e$BG0$N$?$a!$0lE@$@$1$G$9$,!$e(B
e$B$3$N@-<A$Oe(B SAMBA e$B$J$I$G%U%!%$%k%7%9%F%`$NDs6!$r<u$1$F$$$k>l9g$be(B
e$B3N<B$K@.$jN)$D$N$G$7$g$&$+!)e(B

CIFSe$B$N;EMM$G$O!"%Q%1%C%HCf$NJ8;zNs$Oe(BASCIIe$B$^$?$Oe(BUnicodee$B$G$9!#e(B

CIFS Data Buffer and String Formats [Protocol] | Microsoft Learn

e$B$G!“e(Bsambae$B$G$9$,!“e(B3.0e$B$h$jA0$O%7%9%F%`%3!<%I%Z!<%8$G%U%!%$%kL>e(B
e$B$N$d$j<h$j$r9T$C$F$$$^$7$?e(B(e$B@Dj$9$k$H$3$m$,$"$C$?$H;W$$$^$9$,!"e(B
e$BAj<j$,F|K\8lHGe(BWindowse$B$J$ie(BCP932e$B$H$$$&$3$H$G$9e(B)e$B!#e(B
3.0e$B0J9
$Oe(BUnicodee$B$K$J$C$F$$$k$O$:$G$9!#e(B
e$B$H$$$&$o$1$Ge(B3.0e$B0J9_$Ne(Bsambae$B$ODL>o$Ne(BWindowse$B$HF1$8$GJ|$C$F$*$$$Fe(B
e$B$$$$$o$1$G$9$,!”$=$l$h$jA0$Ne(Bsambae$B$O$K$D$$$F$O!”$(!<$H!“e(B2.2e$B$He(B
e$B$+$Ne(Bsambae$B$Ge(BWindowse$B$+$i8+$FIT@5$JJ8;zNs$H$J$k%U%!%$%kL>$N%U%!e(B
e$B%$%k$re(BWe$B7Oe(BAPIe$B$G0l0U$K%”%/%;%9$9$kJ}K!$,$“$C$?$iC/$+65$($F$/$@e(B
e$B$5$$!”$C$F46$8$G$9!#e(B

e$B$=$l$G$O!#e(B

On Fri, 6 Jun 2008 14:27:57 +0900
In article [email protected]
[[ruby-dev:34965] Re: open() and encodings]
“U.Nakamura” [email protected] wrote:

e$B$$$$$o$1$G$9$,!“$=$l$h$jA0$Ne(Bsambae$B$O$K$D$$$F$O!”$(!<$H!“e(B2.2e$B$He(B
e$B$+$Ne(Bsambae$B$Ge(BWindowse$B$+$i8+$FIT@5$JJ8;zNs$H$J$k%U%!%$%kL>$N%U%!e(B
e$B%$%k$re(BWe$B7Oe(BAPIe$B$G0l0U$K%”%/%;%9$9$kJ}K!$,$“$C$?$iC/$+65$($F$/$@e(B
e$B$5$$!”$C$F46$8$G$9!#e(B

name mangling e$B$r%%U$K$9$k$H!"e(BSamba3
e$B7O$G$bIT@5$J%U%!%$%kL>$J%U%!%$%k$re(B
e$BDs6!$G$-$^$9!#$?$H$($P!“e(B: e$B$H$+e(B "
e$B$H$+$,:.F~$7$F$$$?$j!“e(B”.” e$B$G=
$o$C$?$je(B
e$B$9$k$d$D!#e(B(UNIX e$BE*$K$O@5Ev$@$,e(B Windows e$BE*$K$OIT@5e(B)

e$B$P$C$A$7%U%!%$%k0lMw$K=P$F$-$^$9$7!“%(%/%9%W%m!<%i>e$G$b%U%!%$%k$NB8:_$Oe(B
e$B8+$($^$9$,!”%“%/%;%9$9$k$3$H$O$G$-$^$;$s$7!”%U%!%$%kL>$NJQ99$b%U%!%$%k$Ne(B
e$B0\F0$b$G$-$^$;$s!#%U%!%$%k$,8+$D$+$j$^$;$s$H$+!"%U%!%$%kL>$,IT@5$G$9$H$+e(B
e$B$N%(%i!<$K$J$j$^$9!#e(B

e$B$J$N$G!“IT@5$J%P%$%HNs$N%U%!%$%k$,Ds6!$5$l$?$H$7$?$i!”$7$l$C$H%U%!%$%kL>e(B
e$B$Ke(B ? e$B$,:.F~!Je(BMultiByteToWideChar()
e$B$,CV49$9$k!K$7!"%U%!%$%k$O8+$($k$,%“e(B
e$B%/%;%9$G$-$:!”$J>uBV$,:n$j=P$5$l$F=*$o$j$+$H;W$$$^$9!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:34964] Re: open() and encodings”
on Fri, 6 Jun 2008 14:10:25 +0900, “U.Nakamura”
[email protected] writes:

|> = Dir (e$B%U%!%$%k%7%9%F%$+$i$NFI$_9~$_e(B) |> |> Windows: UTF-16LE e$B"*e(B UTF-8e$B$KJQ49e(B(e$B%?%0IU$1e(B) |> OS X: UTF8-MAC e$B"*e(B UTF-8(or UTF8-MAC)e$B%?%0IU$1e(B) |> UNIXe$B7Oe(B: NULe$B$r4^$^$J$$J8;zNse(B e$B"*e(B localee$B$K$7$?$,$$%?%0IU$1e(B |> |> = Open (e$B%U%!%$%k%7%9%F%$X$N;XDje(B)
|>
|> Windows: UTF-16LEe$B$KJQ49e(B
|> e$BJQ49$H8@$C$F$b!"e(B7BITe$B$^$?$Oe(BUnicodee$B$G$J$1$l$P%(%i!<e(B
|> UTF-8e$B$r5!3#E*$Ke(BUTF-16e$B$KJQ49$9$kDxEYe(B
|> OS X: UTF-8e$B%A%‘%C%/e(B
|> UNIXe$B7Oe(B: e$B%P%$%HI=8=$r$=$N$^$^;H$&e(B(e$B%(%s%3!<%G%#%s%0$OL5;ke(B)
|> asciicompat(or NULe$B$r4^$^$J$$$+$I$&$+e(B)e$B%A%’%C%/$OI,MW$+e(B
|>
|> e$B$/$i$$$,E,Ev$G$O$J$$$+$H;W$$$^$9!#$I$&$G$7$g$&!)e(B
|
|Windowse$B$N>l9g!“4{B8$N%9%/%j%W%H$O%U%!%$%k%7%9%F%$KEO$9e(B/e$B$+$ie(B |e$BLc$&%U%!%$%kL>$O%7%9%F%%3!<%I%Z!<%8e(B(e$B8@$$49$($k$HF|K\8lHG$J$ie(B
|SJIS)e$B$G$”$k$H2>Dj$7$F=q$+$l$F$$$^$9!#e(B
|e$B$h$C$F8_49@-$N8+CO$+$ie(BWindowse$B$K4X$7$F$O>e5-0F$K$OH?BP$G$9!#FCe(B
|e$B$Ke(Bopene$B$NJ}!#e(B

e$B$&!<$`!"$=$&$9$k$He(BWindowse$B$K$*$1$k!Ve(BUnicodee$B$G$J$1$l$P%(%i!<!We(B
e$B$r!Ve(BUTF-16LEe$B$KJQ49!W$K$9$l$P$I$&$G$7$g$&$+!#e(B

e$B$3$s$K$A$O!"$J$+$`$ie(B(e$B$&e(B)e$B$G$9!#e(B

In message “[ruby-dev:34967] Re: open() and encodings”
on Jun.06,2008 16:05:08, [email protected] wrote:

|> UTF-8e$B$r5!3#E*$Ke(BUTF-16e$B$KJQ49$9$kDxEYe(B
|e$B$Ke(Bopene$B$NJ}!#e(B

e$B$&!<$`!"$=$&$9$k$He(BWindowse$B$K$*$1$k!Ve(BUnicodee$B$G$J$1$l$P%(%i!<!We(B
e$B$r!Ve(BUTF-16LEe$B$KJQ49!W$K$9$l$P$I$&$G$7$g$&$+!#e(B

e$B$h$$$H;W$$$^$9!#e(B
e$B$"$H<h$C$F$/$k$[$&$G$9$M!"LdBj$O!#e(B

e$B$=$l$G$O!#e(B

e$B$3$s$K$A$O!"$J$+$`$ie(B(e$B$&e(B)e$B$G$9!#e(B

In message “[ruby-dev:34963] Re: open() and encodings”
on Jun.06,2008 11:39:47, [email protected] wrote:

     UTF-8e$B$r5!3#E*$Ke(BUTF-16e$B$KJQ49$9$kDxEYe(B

OS X: UTF-8e$B%A%‘%C%/e(B
UNIXe$B7Oe(B: e$B%P%$%HI=8=$r$=$N$^$^;H$&e(B(e$B%(%s%3!<%G%#%s%0$OL5;ke(B)
asciicompat(or NULe$B$r4^$^$J$$$+$I$&$+e(B)e$B%A%’%C%/$OI,MW$+e(B

e$B$/$i$$$,E,Ev$G$O$J$$$+$H;W$$$^$9!#$I$&$G$7$g$&!)e(B

Windowse$B$N>l9g!“4{B8$N%9%/%j%W%H$O%U%!%$%k%7%9%F%$KEO$9e(B/e$B$+$ie(B e$BLc$&%U%!%$%kL>$O%7%9%F%%3!<%I%Z!<%8e(B(e$B8@$$49$($k$HF|K\8lHG$J$ie(B
SJIS)e$B$G$”$k$H2>Dj$7$F=q$+$l$F$$$^$9!#e(B
e$B$h$C$F8_49@-$N8+CO$+$ie(BWindowse$B$K4X$7$F$O>e5-0F$K$OH?BP$G$9!#FCe(B
e$B$Ke(Bopene$B$NJ}!#e(B

e$B$=$l$G$O!#e(B

e$BLZB<$G$9!#e(B

On Fri, 6 Jun 2008 16:24:10 +0900
“U.Nakamura” [email protected] wrote:

e$B$J$N$G!“IT@5$J%P%$%HNs$N%U%!%$%k$,Ds6!$5$l$?$H$7$?$i!”$7$l$C$H%U%!%$%kL>e(B
e$B$Ke(B ? e$B$,:.F~!Je(BMultiByteToWideChar() e$B$,CV49$9$k!K$7!"%U%!%$%k$O8+$($k$,%“e(B
e$B%/%;%9$G$-$:!”$J>uBV$,:n$j=P$5$l$F=*$o$j$+$H;W$$$^$9!#e(B

e$B>pJs$"$j$,$H$&$4$6$$$^$9!#e(B

e$B8+$($k$H$$$&$3$H$O$D$^$j$J$s$+2u$l$?%U%!%$%kL><+BN$O<h$l$k$He(B
e$B$$$&$3$H$G$9$h$M$(!"%(%i!<H/@8$G$J$/!#e(B
rubye$B$O$I$&$9$k$Y$-$J$s$G$7$g$&$M!#e(B

e$BNs5s$9$k$H$-$K$3$C$=$je(Bvalidation
e$B$7$F$*$$$F!"$X$s$J$N$,8!=P$5$l$?$ie(B
e$BNc30H/@8!#$H$+!#e(B
#e$B=E$$$+e(B

e$B$3$s$K$A$O!"$J$+$`$ie(B(e$B$&e(B)e$B$G$9!#e(B

In message “[ruby-dev:34966] Re: open() and encodings”
on Jun.06,2008 15:58:14, [email protected] wrote:

e$B8+$($^$9$,!“%”%/%;%9$9$k$3$H$O$G$-$^$;$s$7!“%U%!%$%kL>$NJQ99$b%U%!%$%k$Ne(B
e$B0\F0$b$G$-$^$;$s!#%U%!%$%k$,8+$D$+$j$^$;$s$H$+!”%U%!%$%kL>$,IT@5$G$9$H$+e(B
e$B$N%(%i!<$K$J$j$^$9!#e(B

e$B$J$N$G!“IT@5$J%P%$%HNs$N%U%!%$%k$,Ds6!$5$l$?$H$7$?$i!”$7$l$C$H%U%!%$%kL>e(B
e$B$Ke(B ? e$B$,:.F~!Je(BMultiByteToWideChar() e$B$,CV49$9$k!K$7!"%U%!%$%k$O8+$($k$,%“e(B
e$B%/%;%9$G$-$:!”$J>uBV$,:n$j=P$5$l$F=*$o$j$+$H;W$$$^$9!#e(B

e$B>pJs$"$j$,$H$&$4$6$$$^$9!#e(B

e$B8+$($k$H$$$&$3$H$O$D$^$j$J$s$+2u$l$?%U%!%$%kL><+BN$O<h$l$k$He(B
e$B$$$&$3$H$G$9$h$M$(!"%(%i!<H/@8$G$J$/!#e(B
rubye$B$O$I$&$9$k$Y$-$J$s$G$7$g$&$M!#e(B

e$B$=$l$G$O!#e(B

On Fri, 6 Jun 2008 16:35:54 +0900
In article [email protected]
[[ruby-dev:34970] Re: open() and encodings]
KIMURA Koichi [email protected] wrote:

e$B8+$($k$H$$$&$3$H$O$D$^$j$J$s$+2u$l$?%U%!%$%kL><+BN$O<h$l$k$He(B
e$B$$$&$3$H$G$9$h$M$(!"%(%i!<H/@8$G$J$/!#e(B
rubye$B$O$I$&$9$k$Y$-$J$s$G$7$g$&$M!#e(B

e$BNs5s$9$k$H$-$K$3$C$=$je(Bvalidation e$B$7$F$*$$$F!"$X$s$J$N$,8!=P$5$l$?$ie(B
e$BNc30H/@8!#$H$+!#e(B
#e$B=E$$$+e(B

e$BLLE]$9$.$k$N$Ge(B open e$B$7$?$H$-$Ke(B Errno::ENOENT
e$B$G$$!<$s$8$c$J$$$+$H;W$&$oe(B
e$B$1$G$9!#e(Bvalidation e$B$H$+8@$$=P$9$He(B NTFS stream
e$B$O$I$&$9$k$s$@$H$+!"LLE]$Ge(B
e$B$9!#e(B

e$BB>$K$b!“e(BFOO e$B$He(B Foo e$B$He(B foo
e$B$H$$$&;0$D$N%U%!%$%k$,$”$C$?$H$7$F!“IaDL$K3+$3e(B
e$B$&$H$9$k$H$I$l$+0l$D!J$?$V$s%(%s%H%j$G:G=i$K$”$k%U%!%$%k!)!K$,3+$+$l$^$9!#e(B
FILE_FLAG_POSIX_SEMANTICS e$BIU$-$G3+$$$?$j!"e(BNtCreateFile
e$B;H$($PA*$s$G3+$1e(B
e$B$^$9$1$I!#e(B

In article [email protected],
“NARUSE, Yui” [email protected] writes:

e$BJQ49$r9T$($PJ]$?$l$J$$2DG=@-$,$"$j$^$9!#e(B

e$B$=$N$?$a!"$3$N>l9g$G$O!"e(BDir.open e$B$9$k:]$Ke(B ASCII-8BIT e$B$G%Q%9$rJV$5$;!“e(B
open e$B$de(B rename e$B$K$be(B ASCII-8BIT e$B$G%Q%9$rEO$9I,MW$,$”$k$G$7$g$&!#e(B

e$BA0Ds$H$7$F!"e(BDir.open e$B$Oe(B e$B%G%U%)%k%H$G$OJQ49$r9T$&$,!"e(B

ASCII-8BIT e$B$GJV$5$;$k<jCJ$,$"$k!#e(B

e$B$^$?!"e(Bopen e$B$de(B rename e$B$,e(B ASCII-8BIT e$B$G%Q%9$r<u$1<h$C$?>l9g$OL5JQ49!#e(B

e$B$J$s$GJQ49$9$k$s$G$9$+e(B?

Unix e$B$G$OJQ49$7$F$[$7$/$J$$$s$G$9$1$I!#e(B

In article [email protected],
“NARUSE, Yui” [email protected] writes:

e$B$9$G$Ke(B Unix e$B$G$OJQ49$7$J$$$H$$$&7kO@$,$G$?$H9M$($F$$$^$9!#e(B

e$B3NG’$G$9$,!"$=$l$Oe(B Dir e$BEy$K$h$k%U%!%$%kL>$N<hF@$b4^$a$F$NOCe(B
e$B$G$9$Me(B?

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:34968] Re: open() and encodings”
on Fri, 6 Jun 2008 16:22:00 +0900, “U.Nakamura”
[email protected] writes:

|> e$B$&!<$`!“$=$&$9$k$He(BWindowse$B$K$*$1$k!Ve(BUnicodee$B$G$J$1$l$P%(%i!<!We(B
|> e$B$r!Ve(BUTF-16LEe$B$KJQ49!W$K$9$l$P$I$&$G$7$g$&$+!#e(B
|
|e$B$h$$$H;W$$$^$9!#e(B
|e$B$”$H<h$C$F$/$k$[$&$G$9$M!"LdBj$O!#e(B

e$B$"$H!"e(BASCII-8BITe$B$J%Q%9$@$H8_49@-$,0];}$G$-$^$;$s$M!#e(B
1.8e$B$O%3!<%I%Z!<%8$@$1$I!“e(B1.9e$B$Oe(BUTF-8e$B$H$_$J$9$3$H$K$J$k$N$+$J$”!#e(B

e$B@.@%$G$9!#e(B

Tanaka A. wrote:

In article [email protected],
“NARUSE, Yui” [email protected] writes:

e$B$9$G$Ke(B Unix e$B$G$OJQ49$7$J$$$H$$$&7kO@$,$G$?$H9M$($F$$$^$9!#e(B

e$B3NG’$G$9$,!"$=$l$Oe(B Dir e$BEy$K$h$k%U%!%$%kL>$N<hF@$b4^$a$F$NOCe(B
e$B$G$9$Me(B?

e$B$^$:7kO@$,=P$?$N$,!“e(B
e$B!Ve(BUnix e$B$G$O%U%!%$%k%7%9%F%$N%(%s%3!<%G%#%s%0$r?dB,$G$-$J$$e(B (e$B$9$k$Y$-$G$b$J$$e(B)e$B!We(B e$B$G$"$C$F!"$3$3$+$ie(B e$B!V%U%!%$%k%7%9%F%$d%U%!%$%k%Q%9$N%(%s%3!<%G%#%s%0$,Mm$`<+F0JQ49$OA4$F9T$o$J$$!We(B
e$B$K;j$k$H9M$($F$$$^$9!#e(B
e$B$D$^$j!”%U%!%$%kL>$N<hF@$K4X$7$F$b<+F0JQ49$O9T$$$^$;$s!#e(B

e$B:#8e$O!"e(BUnix e$B$K$D$$$F$O!"e(BDir
e$BEy$K$h$k%U%!%$%kL>$N<hF@$K4X$7$F!"e(B

  • e$BJQ49$7$J$$>l9g$K%;%C%H$5$l$k$N$Oe(B ASCII-8BIT e$B$G$h$$$+3NG’e(B
  • e$B<jF0JQ49$N$?$a$N%*%W%7%g%s$r%5%]!<%H$9$k$+e(B
  • e$B%5%]!<%H$9$k$J$i$I$N$h$&$K;XDj$9$k$+e(B
    e$B$"$?$j$G$G$7$g$&$+!#e(B

In message [email protected]
on Fri, 6 Jun 2008 07:51:28 +0900,
“NARUSE, Yui” [email protected] wrote:

e$B;~4V$,$"$C$?$i2q<R$G;n$7$F$$^$7$g$&!"$C$F2?$r$I$&%A%'%C%/$9$l$PNI$$$se(B
e$B$+$Je(B?
e$B;n$7$F$
$^$7$?!#e(B

e$BM=$a!"e(BFindere$B$G!VF|K\8l!W$H$$$&L>A0$N%U%)%k%@$r!"E,Ev$Je(Bhfse$B$N%G%#%l%/%He(B
e$B%j0J2<$H!"e(B/Volumes/BOOTCAMPe$B$K:n@.$7$F$*$$$F!"e(B

% echo Volumes/BOOTCAMP/* | hexdump -C

% cd some-dir
% echo * | hexdump -C

e$B$H!“$7$?7k2L$r3NG’$7$^$7$?$,!”$$$:$l$bF1$8$G$7$?!#e(B

e$B$H$$$&$o$1$G!“e(BFAT32e$B$Ne(BShift_JISe$B$G=q$-9~$^$l$F$$$k$G$”$m$&%U%!%$%kL>$be(B
utf-8e$B$G%"%W%j%1!<%7%g%s$K$OEO$C$F$/$k$h$&$G$9!#e(B

e$B@.@%$G$9!#e(B

Tanaka A. wrote:

e$B$^$?!"e(Bopen e$B$de(B rename e$B$,e(B ASCII-8BIT e$B$G%Q%9$r<u$1<h$C$?>l9g$OL5JQ49!#e(B

e$B$J$s$GJQ49$9$k$s$G$9$+e(B?

Unix e$B$G$OJQ49$7$F$[$7$/$J$$$s$G$9$1$I!#e(B

e$B:G=i$K=q$$$?;~E@$G$NA[Dj$G$9$+$i!#e(B

e$B$9$G$Ke(B Unix e$B$G$OJQ49$7$J$$$H$$$&7kO@$,$G$?$H9M$($F$$$^$9!#e(B

Takahiro K. wrote:

e$B<B:]$K;H$C$F$$$k?M$N0U8+$bM_$7$$=j!#e(B
% cd some-dir
% echo * | hexdump -C

e$B$H!"$7$?7k2L$r3NG’$7$^$7$?$,!"$$$:$l$bF1$8$G$7$?!#e(B

e$B$H$$$&$o$1$G!“e(BFAT32e$B$Ne(BShift_JISe$B$G=q$-9~$^$l$F$$$k$G$”$m$&%U%!%$%kL>$be(B
utf-8e$B$G%"%W%j%1!<%7%g%s$K$OEO$C$F$/$k$h$&$G$9!#e(B

e$B$J$k$[$I!“e(BUTF-8 e$B7h$a$&$A$GBg>fIW$=$&$G$9$M!#e(B
e$B$”$j$,$H$&$4$6$$$^$7$?!#e(B