# NKF,Kconv

**URL:** <https://www.ruby-forum.com/t/nkf-kconv/124691>\
**Category:** Development\
**Created:** [January 1, 2008, 4:57am UTC](https://www.ruby-forum.com/t/nkf-kconv/124691 "2008-01-01T04:57:32Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [January 1, 2008, 4:57am UTC](https://www.ruby-forum.com/t/nkf-kconv/124691/1 "2008-01-01T04:57:32Z")

</div>

e$B@\>;3OB9-$G$9!#e(B

NKF::SJIS e$B$Oe(B #Encoding:Shift\_JIS e$B$K$J$C$F$$$^$9$,!"e(B  
-Ks e$B$KBP1~$9$k%(%s%3!\<%G%#%s%0$re(B #Encoding:Windows-31J e$B$Ke(B  
e$B$9$k$N$J$ie(B NKF::SJIS e$B$be(B #Encoding:Windows-31J  
e$B$K$J$C$Fe(B  
e$B$$$?J}$,NI$$$N$G$O$J$$$G$7$g$&$+e(B?

# Kconv.tosjis e$B$H$+$G!#e(B

Kconv.isutf8 e$B$J$I$Ne(B Kconv.ise$B7O$G!Ve(Bincompatible encoding  
regexp  
matche$B!W$K$J$k$3$H$,$"$k$N$O;EMM$G$7$g$&$+e(B?

Kconv.isutf8("\u3042")  
ArgumentError: incompatible encoding regexp match (ASCII-8BIT regexp  
with UTF-8 string)

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [January 1, 2008, 5:27am UTC](https://www.ruby-forum.com/t/nkf-kconv/124691/2 "2008-01-01T05:27:54Z")

</div>

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

Kazuhiro NISHIYAMA wrote:

> NKF::SJIS e$B$Oe(B #Encoding:Shift\_JIS e$B$K$J$C$F$$$^$9$,!"e(B  
> -Ks e$B$KBP1~$9$k%(%s%3!\<%G%#%s%0$re(B #Encoding:Windows-31J e$B$Ke(B  
> e$B$9$k$N$J$ie(B NKF::SJIS e$B$be(B #Encoding:Windows-31J e$B$K$J$C$Fe(B  
> e$B$$$?J}$,NI$$$N$G$O$J$$$G$7$g$&$+e(B?

e$B$&!\<$s!#!#!#e(B

- SJIS e$B$Oe(B IANA e$BEPO?L\>$G$O$J$$$+$ie(B Shift\_JIS  
e$B0J30$r$5$7$F$b$$$$$+$be(B
- Encoding::SJIS e$B$Oe(B Encoding::Shift\_JIS e$B$Ne(B alias  
e$B$J$N$GL7=b$O$^$:$$e(B  
e$B$H$$$&$N$,8=;~E@$G$N9M$($G$9!#e(B

> # Kconv.tosjis e$B$H$+$G!#e(B

nkf -s e$B$Oe(B Windows-31J  
e$B$K$7$F$7$^$_$&$+$J$!$H;W$C$F$$$^$9!#$7$+$7!"e(Btosjis  
e$B$Oe(B to SJIS e$B$@$m$&$J$!$H!#8D?ME_$K$O$`$7$me(B Windows-31J  
e$BJQ49e(B + CRLF e$B2~9T$Ne(B  
towin e$B$G$bDI2C$7$F$\*Cc$rBy$=$&$+$J$!$H;W$C$F$$$^$9!#e(B

> Kconv.isutf8 e$B$J$I$Ne(B Kconv.ise$B7O$G!Ve(Bincompatible encoding regexp  
> matche$B!W$K$J$k$3$H$,$"$k$N$O;EMM$G$7$g$&$+e(B?
> 
> Kconv.isutf8("\u3042")  
> ArgumentError: incompatible encoding regexp match (ASCII-8BIT regexp with UTF-8 string)

e$B%a%=%C%I$N\<q;]$+$i$$$C$F%P%0$@$H;W$$$^$9!#0l1~e(Bstr.dup.force\_encoding  
(str.encoding) e$B$GD\>$j$^$9$,!"e(BASCII-8BIT e$B$N@55,I=8=$Oe(B  
Shift\_JIS e$B$de(B UTF-8  
e$B$K$b%^%C%A$5$;$?$$$h$&$J!#$=$NJU$I$&$J$N$G$7$g$&$M!#e(B

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [January 1, 2008, 5:55am UTC](https://www.ruby-forum.com/t/nkf-kconv/124691/3 "2008-01-01T05:55:20Z")

</div>

In article [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid),  
“NARUSE, Yui” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) writes:

> e$B%a%=%C%I$N\<q;]$+$i$$$C$F%P%0$@$H;W$$$^$9!#0l1~e(Bstr.dup.force\_encoding  
> (str.encoding) e$B$GD\>$j$^$9$,!"e(BASCII-8BIT e$B$N@55,I=8=$Oe(B Shift\_JIS e$B$de(B UTF-8  
> e$B$K$b%^%C%A$5$;$?$$$h$&$J!#$=$NJU$I$&$J$N$G$7$g$&$M!#e(B

e$B$=$NMW5a$O$9$G$K2?2s$+$“$C$F!”$I$&$bDA$7$/$J$$$h$&$G$9$,!“J8e(B  
e$B;z$NH\>J,$H$+$K%^%C%A$5$l$k$He(B MatchData#begin e$B$”$?$j$,Dj5A$Ge(B  
e$B$-$J$$$N$G!“Cf?H$N%P%$%HNs$r07$$$?$$$N$G$”$l$P$"$-$i$a$Fe(B  
str.dup.force\_encoding(“ASCII-8BIT”) e$B$7$F$/$@$5$$!#e(B

e$B$?$@!“$3$l$O%a%=%C%I$N\<q;]$,J8;zNs$r%P%$%HNs$H$7$F2r\<a$9$k$He(B  
e$B$$$&$b$N$@$C$?\>l9g$G$9!#$b$7$=$&$$$&\<q;]$G$”$l$P!"e(B  
force\_encoding e$B$r;H$&$N$O$=$N\<q;]$K$=$C$?$b$N$@$H$$$($k$G$7$ge(B  
e$B$&!#e(B

e$B$7$+$7!"0z?t$K$O%P%$%HNs$re(B ASCII-8BIT  
e$B$JJ8;zNs$H$7$FEO$9$3$H!"e(B  
e$B$H$$$&;EMM$K$9$l$P!"JQ99$NI,MW$O$J$$$N$+$b$7$l$^$;$s!#e(B

e$B$^$?!“Nc$($P!”%P%$%HNs$,e(B ISO-8859-1 e$B$KBP1~$7$Fe(B UTF-8  
e$B$KJQ49e(B  
e$B$5$l$?$b$N$r9M$($F85$N%P%$%HNs$r07$$$?$$$H$$$&$N$G$"$l$P$=$le(B  
e$B$O$=$l$G0c$C$?J}K!$,I,MW$G$7$g$&!#e(B

e$B7k6I!"%P%$%HNs$r$I$&I=8=$7$F%a%=%C%I$KEO$9$+$H$$$&;EMM$NLdBje(B  
e$B$K$J$j$^$9!#$D$^$j!“e(BString e$B$,%P%$%HNs$+$iJ8;zNs$KJQ$o$C$F$7e(B  
e$B$^$C$?$N$G!”$=$l$KBP1~$7$?;EMM$r8!F$$7$J$1$l$P$J$i$J$$$H$$$&e(B  
e$B$3$H$G$7$g$&!#e(B

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [January 1, 2008, 7:39am UTC](https://www.ruby-forum.com/t/nkf-kconv/124691/4 "2008-01-01T07:39:16Z")

</div>

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

Tanaka A. wrote:

> str.dup.force\_encoding(“ASCII-8BIT”) e$B$7$F$/$@$5$$!#e(B  
> e$B$3$l\<+BN$OG\<F@$G$-$k$N$G$9$,!"%^%C%A$5$;$F\<N$F$k$@$1$J$N$Ke(Bdupe$B$9$k$N$,$Je(B  
> e$B$s$+L5BL$J5$$,$9$k$N$,0z$C3]$+$kE@$G$7$g$&$+!#e(BASCII-8BIT  
> e$B$N@55,I=8=$re(B  
> e$B%^%C%A$5$;$k$N$O!“J8;zNs$r%P%$%J%j$H2r\<a$7$F%^%C%A$9$k$H$$$&\<q;]$G$”$k$He(B  
> e$B2r\<a$7$F!“0EL[$Ke(Bdup.force\_encoding(“ASCII-8BIT”)  
> e$B$G$-$^$;$s$+$M!#e(B  
> e$B!Ve(BMatchData#begin  
> e$B$”$?$j$,Dj5A$G$-$J$$!W$H$$$&$N$bJV$9J8;zNs$re(B  
> ASCII-8BIT e$B$K$9$l$P2sHr$G$-$k$h$&$J5$$,$9$k$N$G$9$,!#e(B

# e$BITFCDj$N%(%s%3!\<%G%#%s%0$NJ8;zNs$Ke(B 7BIT ASCII

e$B$r%^%C%A$5$;$?$$;vNc$O;We(B  
e$B$$Ib$+$s$G$b!“e(B8BIT  
e$B$r%^%C%A$5$;$?$$;vNc$O$”$^$j;W$$Ib$+$S$^$;$s$,!#e(B

> e$B$7$+$7!"0z?t$K$O%P%$%HNs$re(B ASCII-8BIT e$B$JJ8;zNs$H$7$FEO$9$3$H!"e(B  
> e$B$H$$$&;EMM$K$9$l$P!"JQ99$NI,MW$O$J$$$N$+$b$7$l$^$;$s!#e(B

e$B%a%=%C%I$N\<q;]$+$i$9$l$P$3$l$,BEEv$J5$$b$9$k$N$G$9$,!"\>/$7LLE]$+$J$!!#e(B

> e$B$^$?!“Nc$($P!”%P%$%HNs$,e(B ISO-8859-1 e$B$KBP1~$7$Fe(B UTF-8 e$B$KJQ49e(B  
> e$B$5$l$?$b$N$r9M$($F85$N%P%$%HNs$r07$$$?$$$H$$$&$N$G$"$l$P$=$le(B  
> e$B$O$=$l$G0c$C$?J}K!$,I,MW$G$7$g$&!#e(B

e$B$3$l$OEO$5$l$?e(Bencodinge$B$K4X$o$i$:!"e(Bstre$B$K4^$^$l$kJ8;z72$NJ8;z=89g$,e(BISO-  
8859-1  
e$B$K4^$^$l$k$H$$$&\<q;]$G$9!)$3$&$$$&$NM\_$7$$5$$O$7$F$$$k$s$G$9$1$I$M!#e(B

> e$B7k6I!"%P%$%HNs$r$I$&I=8=$7$F%a%=%C%I$KEO$9$+$H$$$&;EMM$NLdBje(B  
> e$B$K$J$j$^$9!#$D$^$j!“e(BString e$B$,%P%$%HNs$+$iJ8;zNs$KJQ$o$C$F$7e(B  
> e$B$^$C$?$N$G!”$=$l$KBP1~$7$?;EMM$r8!F$$7$J$1$l$P$J$i$J$$$H$$$&e(B  
> e$B$3$H$G$7$g$&!#e(B

e$B7k6I$N$H$3$m!"e(BString#valid\_encoding?  
e$B$r;H$C$F$/$@$5$$$H$$$&$3$H$G!"e(B  
Kconv.is\* e$B$OA4GQ$G$$$$5$$b$7$F$$$k$N$G$9$h$Me(B

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [January 1, 2008, 9:16am UTC](https://www.ruby-forum.com/t/nkf-kconv/124691/5 "2008-01-01T09:16:46Z")

</div>

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

Tanaka A. wrote:

> force\_encoding e$B$OJ8;z$H$$$&Cj\>]$rGK$k$b$N$G$9$+$i!"0EL[$K$Oe(B  
> e$B$d$i$J$$$[$&$,$$$$$G$7$g$&!#e(B
> 
> e$B$"$H$O!"e(Bdup e$B$O%a%b%j$r6&M-$9$k$H;W$($P5$$K$J$i$J$/$J$j$^$;$s$+!#e(B

e$B$"!\<!"$=$&$$$($P\<BBN$OF1$8$G$9$M!#AGD\>$Ke(B force\_encoding  
e$B$7$F$\*$-$^$9!#e(B

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [January 1, 2008, 8:20am UTC](https://www.ruby-forum.com/t/nkf-kconv/124691/6 "2008-01-01T08:20:09Z")

</div>

In article [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid),  
“NARUSE, Yui” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) writes:

> e$B$3$l\<+BN$OG\<F@$G$-$k$N$G$9$,!"%^%C%A$5$;$F\<N$F$k$@$1$J$N$Ke(Bdupe$B$9$k$N$,$Je(B  
> e$B$s$+L5BL$J5$$,$9$k$N$,0z$C3]$+$kE@$G$7$g$&$+!#e(BASCII-8BIT e$B$N@55,I=8=$re(B  
> e$B%^%C%A$5$;$k$N$O!“J8;zNs$r%P%$%J%j$H2r\<a$7$F%^%C%A$9$k$H$$$&\<q;]$G$”$k$He(B  
> e$B2r\<a$7$F!"0EL[$Ke(Bdup.force\_encoding(“ASCII-8BIT”) e$B$G$-$^$;$s$+$M!#e(B

e$B0EL[$Ke(B force\_encoding e$B$H$$$&$N$O!"$J$s$Ge(B force\_encoding  
e$B$,$3e(B  
e$B$s$J$KD9$/$FL@\<(E\*$J$N$+$H$$$&M}M3$KH?$7$^$9!#e(B

force\_encoding e$B$OJ8;z$H$$$&Cj\>]$rGK$k$b$N$G$9$+$i!"0EL[$K$Oe(B  
e$B$d$i$J$$$[$&$,$$$$$G$7$g$&!#e(B

e$B$"$H$O!"e(Bdup  
e$B$O%a%b%j$r6&M-$9$k$H;W$($P5$$K$J$i$J$/$J$j$^$;$s$+!#e(B

> e$B!Ve(BMatchData#begin e$B$"$?$j$,Dj5A$G$-$J$$!W$H$$$&$N$bJV$9J8;zNs$re(B  
> ASCII-8BIT e$B$K$9$l$P2sHr$G$-$k$h$&$J5$$,$9$k$N$G$9$,!#e(B

e$B$I$s$JDj5A$G$b$h$1$l$PDj5A$O$G$-$^$9!#$G$b!"$$$m$s$J@-\<A$,2ue(B  
e$B$l$^$9$h$M!#85$NJ8;zNs$K$O4^$^$l$J$$J8;zNs$,e(B $& e$B$K=P$F$/$k$He(B  
e$B$+!#e(B(e$B%P%$%HNs$H$7$F$O4^$^$l$F$k$G$7$g$&$,J8;zNs$H$7$F$Oe(B)

dup e$B$,L5BL$H$$$&M}M3$G;EMM$rOD$a$k$N$O$+$J$jK\KvE\>E]$J$h$&$Ke(B  
e$B;W$$$^$9!#e(B

> e$B7k6I$N$H$3$m!"e(BString#valid\_encoding? e$B$r;H$C$F$/$@$5$$$H$$$&$3$H$G!"e(B  
> Kconv.is\* e$B$OA4GQ$G$$$$5$$b$7$F$$$k$N$G$9$h$Me(B

e$B$^$!!"$=$l$b$R$H$D$NJ}K!$+$b$7$l$^$;$s!#e(B

e$B$^$?!“Cf?H$r$=$&$9$k$H$$$&$N$b$”$jF@$k$+$b$7$l$^$;$s!#e(B  
force\_encoding e$B$OI,MW$G$9$,!#e(B
