´äº¯.


[ ´ÙÀ½ ±Ûµé ] [ À̾ ±Û¿Ã¸®±â(´äÇϱâ) ] [ ÀÚ¹Ù ¹¯°í ´äÇϱâ ]

±Û¾´ÀÌ :±è´öÅ 1998³â 1¿ù 10ÀÏ 01:38:20

In Reply to: [ÀçÁú¹®] getBytes("KSC5601") ¿¡ °üÇÏ¿©... posted by ±èÇÊÈ£ on 1998³â 1¿ù 08ÀÏ 13:30:51:

JDK 1.1 ³ª¿Ã ¹«·Æ (º£Å¸¿´´ø°¡?), ÇÑ±Û °ü·Ã ¹ö±×°¡ Á» ¸¹¾Ò½À´Ï´Ù.
ÇÁ·Î±×·¥¿¡ ÇѱÛÀ» ÀÎÀÚ·Î ³Ñ°ÜÁÖ¸é ±úÁö´Â ¹®Á¦°¡ ¹ß»ýÇÏ´Â °ÍÀ»
À±°æ±¸´ÔÀÌ ´º½º ±×·ìÀ» ÅëÇÏ¿© ¿Ã¸®¼Ì´Â µ¥,
Ãâ·ÂµÇ´Â Äڵ尪À» º¸´Ï, ¿©Å±îÁö °è¼Ó ¹®Á¦°¡ µÇ´Â °Í°ú ¸¶Âù°¡Áö
Çö»óÀ̾ú½À´Ï´Ù. Áï, ÇѱÛÀ» À¯´ÏÄڵ忡¼­ÀÇ ÇÑ±Û ÄÚµå ¿µ¿ªÀ¸·Î
º¯È¯ÇÏÁö ¾Ê°í, 8859-1 ¹®ÀÚ ¿µ¿ªÀ¸·Î º¯È¯ÇÏ´Â °ÍÀ̾ú½À´Ï´Ù.
±× ¹ö±×´Â JDK ³»ºÎÀÇ ÄÚµå º¯È¯ ¹ö±×¿´°í, ±×·¡¼­, À¯´ÏÄÚµå·Î
Äڵ庯ȯÇϱâ ÀÌÀü»óÅÂÀÇ ¹ÙÀÌÆ® ¹è¿­À» ±¸Çؼ­ ÄÚµå º¯È¯ ¹ö±×
ÀÌÀü »óÅÂÀÇ ¹ÙÀÌÆ®µéÀ» ±¸ÇÑ´ÙÀ½ ´Ù½Ã À¯´ÏÄÚµåÀÇ ÇÑ±Û ¿µ¿ªÀ¸·Î
Á¦´ë·Î º¯È¯ÇÔÀ¸·Î½á JDK ³»ºÎÀÇ ¹ö±×¸¦ ÇØ°áÇÏ´Â ¹æ¹ýÀ» Á¦°øÇß´ø °ÍÀÔ´Ï´Ù.


±×·¯³ª, Áö±ÝÀº ±× ¹ö±×°¡ °íÃÄÁ®¼­ Á¦´ë·Î ÄÚµå º¯È¯À» ÇÕ´Ï´Ù.
Á¦´ë·Î ÄÚµå º¯È¯µÈ ½ºÆ®¸µÀ» ´Ù½Ã ±×¿Í °°ÀÌ º¯È¯Çϸé
À̹ø¿¡ ÇѱÛÀÌ ´Ù½Ã ±úÁö°Ô µË´Ï´Ù.
Áï, ±×·¯½ÄÀÇ ÇØ°á¹æ¾ÈÀº ´ëºÎºÐ ¹ÌºÀÃ¥¿¡ ºÒ°úÇÑ °ÍÀÔ´Ï´Ù.


±×·¡¼­, Àú´Â ±×·± ¹æ¹ýÀ» ¾²´Â °ÍÀ» ¾ÆÁÖ ½È¾îÇÏÁö¸¸
¹ö±×¶ó´ø°¡ ÀÚ¹ÙÀÇ ¼³°è»ó ¹®Á¦µîÀÌ ÀÖÀ» ¶§´Â ¾î¿ ¼ö ¾øÀÌ
¾µ ¼ö ¹Û¿¡ ¾ø±âµµ ÇÕ´Ï´Ù.
´Ù¸¥ ¹æ¹ýÀÌ ÀÖ´Â µ¥µµ ¾²´Â °ÍÀº °áÄÚ ¹Ù¶÷Á÷ÇÏÁö ¾Ê½À´Ï´Ù.


Áú¹® 1¿¡ ´ëÇÑ ´äº¯.
http://calab.kaist.ac.kr/~dtkim/java ¿¡ º¸½Ã¸é,
´ÙÀ½ ºÎºÐÀÌ ÀÖ½À´Ï´Ù.


sun.io.CharToByteKSC5601 Ŭ·¡½ºÀÇ ¹ö±×


EUC-KR (KSC5601) ÀÎÄÚµùÀ¸·Î Ãâ·ÂÇÒ ¶§, ÀϺΠ¹®ÀÚ ÀÚ·á°¡ Ãâ·ÂµÇÁö ¾Ê°í »ç¶óÁø´Ù. ÀÌ
Ŭ·¡½º´Â À¯´ÏÄڵ带 KSC5601 ÀÎÄÚµùÀÇ ¹ÙÀÌÆ®·Î º¯È¯ÇÏ´Â ¸ðµç Ŭ·¡½º¿¡¼­ ³»ºÎÀûÀ¸·Î
»ç¿ëµÈ´Ù.



getBytesµµ ÀÌ Å¬·¡½º¸¦ »ç¿ëÇÏ¿© KSC5601 ÄÚµå·Î º¯È¯ÇϹǷÎ, ÀÌ Å¬·¡½ºÀÇ ¹ö±×´Â
getBytes »Ó¸¸ ¾Æ´Ï¶ó À̸¦ ³»ºÎÀûÀ¸·Î »ç¿ëÇÏ´Â ´Ù¸¥ Ŭ·¡½ºÀÇ ¹ö±×·Î À̾îÁý´Ï´Ù.
¹ö±×ÀÇ ¿øÀÎÀº ¿¹¿Ü 󸮸¦ À߸øÇÑ Á» ¹Ì¹¦ÇÑ °ÍÀ̾ú½À´Ï´Ù.
ÀÌ Å¬·¡½ºÀÇ ¹ö±×°¡ ¿µÇâÀ» ¹ÌÄ¡´Â Ŭ·¡½º°¡ ¸¹¾Æ¼­ workaround¸¦ ¸¸µé±â °ï¶õÇÏ°í º¹ÀâÇßÀ¸¹Ç·Î,
À̵é Ŭ·¡½º¸¦ ±³Á¤ÇÏ¿© ¹èÆ÷Çß´ø °ÍÀÔ´Ï´Ù.
±×·¯³ª, À¥ ºê¶ó¿ìÀú¿¡¼­´Â ÀÏ¹Ý »ç¿ëÀÚ°¡ ±× ¹ö±× ÆÐÄ¡È­ÀÏÀ» ¼³Ä¡ÇϱⰡ
°ï¶õÇÒ °ÍÀÌ°í, »ý°¢°ú´Â ´Þ¸® ½ã»ç¿¡¼­´Â ¾ÆÁ÷µµ ±× ¹ö±×¸¦ °íÄ¡Áö ¾Ê°í À־,
Á»´õ ÀÚ¼¼ÇÑ bug checking program°ú workaround¸¦ ÁغñÁßÀÔ´Ï´Ù.
ÀÌ Å¬·¡½ºÀÇ ¹ö±×°¡ getBytesÀÇ ¹ö±×·Î À̾îÁöÁö´Â ¾Ê´Â °Í °°´õ±º¿ä.
Á» ´õ Á¶»çÇغ¸¾Æ¾ß ÇÕ´Ï´Ù.


Áú¹® 2¿¡ ´ëÇÑ ´äº¯.
Áú¹® Àǵµ¸¦ Àß ÆľÇÇÒ ¼ö ¾øÀ½.


Áú¹® 3¿¡ ´ëÇÑ ´äº¯.
´ñ±Û¿¡ º¸´Ï ÀÌÇØÇϽŠ°Í °°±º¿ä.


Áú¹® 4¿¡ ´ëÇÑ ´äº¯.
ÀÚ¹Ù ¿ø½ÃÈ­ÀÏÀ» ÇÑ±Û È¯°æÀÇ ÆíÁý±â·Î º¸¸é,
String str = "°¡°¢" ¿¡¼­ÀÇ `°¡' ¶ó´Â ¹®ÀÚ¿Í `°¢'À̶ó´Â ¹®ÀÚ°¡
Çѱ۷ΠÁ¦´ë·Î º¸ÀÔ´Ï´Ù.
±× ÀÌÀ¯´Â ÀÚ¹ÙÀÇ ¿ø½ÃÈ­Àϳ»¿¡ ÀÖ´Â ÇѱÛÀº ÇöÀç Ç¥ÁØÈ­ µÇ¾îÀÖ´Â
KSC5601 ÀÎÄÚµùÀÇ ¹ÙÀÌÆ® °ªÀ¸·Î ÀúÀåµÇ¾î Àֱ⠶§¹®ÀÔ´Ï´Ù.
(Áï, '°¡'µµ KSC5601 2 ¹ÙÀÌÆ®, '°¢'µµ KSC5601 2 ¹ÙÀÌÆ® Â÷Áö)
ÀÚ¹Ù 1.1¿¡¼­´Â ¹®ÀÚ°¡ ¸ðµÎ À¯´ÏÄÚµå 2.0À¸·Î Ç¥ÇöµÇ¾î¾ß ÇϹǷÎ,
ÀÌ·¯ÇÑ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ JDK 1.1ÀÇ ÀÚ¹Ù ÄÄÆÄÀÏ·¯´Â ¿ø½ÃÈ­Àϳ»ÀÇ
KSC5601 ¹ÙÀÌÆ®µéÀ» ¸ðµÎ À¯´ÏÄÚµåÀÇ ÇÑ±Û ¿µ¿ª¿¡ ÀÖ´Â Äڵ尪À¸·Î
º¯È¯ÇÏ¿© .class È­ÀÏÀ» ¸¸µé°Ô µË´Ï´Ù.
Áï, Á¦´ë·Î ÄÄÆÄÀÏµÈ .class È­ÀÏ¿¡´Â ÇѱÛÀÌ À¯´ÏÄÚµå ¿µ¿ª 0xAC00 ºÎÅÍ ½ÃÀÛÇÏ´Â
ÇÑ±Û Äڵ尪À¸·Î ÀúÀåµÇ¹Ç·Î, ½ÇÇà½ÃÄѺ¸¸é À¯´ÏÄÚµå °ªÀ¸·Î ÀúÀåµÇ¾î ÀÖÀ½À»
¾Ë ¼ö ÀÖ½À´Ï´Ù.


µû¶ó¼­, À¯´ÏÄÚµå ÇÑ±Û ¹®ÀÚ¿­ÀÌ ÀúÀåµÈ strº¯¼ö¸¦ getBytes("KSC5601")À»
½ÇÇàÇÏ¸é ¹ÙÀÌÆ® ¹è¿­ÀÌ ¹ÝȯµÇ´Â µ¥, À̶§ À¯´ÏÄڵ峻ÀÇ ÇÑ±Û ÄÚµå ¿µ¿ª¿¡ ÀÖ´Â Äڵ尪Àº
KSC5601³»¿¡¼­ÀÇ ´ëÀÀÇÏ´Â ÇÑ±Û ¹®ÀÚ¸¦ ³ªÅ¸³»´Â Äڵ尪À¸·Î º¯È¯µÇ¾î ¹ÝȯµË´Ï´Ù.
µû¶ó¼­, ±× ¹ÙÀÌÆ® ¹è¿­À» È­ÀÏ·Î ÀúÀåÇϰųª µµ½ºÃ¢À¸·Î ±×´ë·Î Ãâ·ÂÇϸé
ÀϹÝÀûÀÎ ÇÑ±Û È¯°æ¿¡¼­ ÇѱÛÀ» º¼ ¼ö ÀÖ´Â ÇüÅÂÀÎ KSC5601 Äڵ尪À¸·Î
ÀúÀåµÇ°Ô µÇ´Â °ÍÀÔ´Ï´Ù.
°á·ÐÀûÀ¸·Î, EUC-KR (KSC5601) Äڵ尪ÀÌ ±×´ë·Î char, char[], String ÀÚ·áÇü¿¡ ÀúÀåµÇ¸é
±×°Ç ÀÏ´Ü À߸ø ÀúÀåµÈ °ÍÀÔ´Ï´Ù. ÄÚµå º¯È¯À» Çؼ­ À¯´ÏÄÚµåÀÇ ÇÑ±Û ¿µ¿ª³»ÀÇ
Äڵ尪À¸·Î ÀúÀåÇØ¾ß ÇÕ´Ï´Ù.


±×·¡ÇÈ ÇÁ·Î±×·¥¿¡¼­ÀÇ ÇÑ±Û Ãâ·Â¹æ½ÄÀº ÀÌ¿Í Á» ´Ù¸¨´Ï´Ù.
Áö±Ý ¿©·¯°¡Áö ¿¹Á¦ ÇÁ·Î±×·¥ ¹× Å×½ºÆ®, ÀÚ·áµîÀ» ÁغñÇÏ°í ÀÖ½À´Ï´Ù.


´ÙÀ½ ±Ûµé:



À̾ ±Û¿Ã¸®±â(´äÇϱâ)

À̸§:
E-Mail:
Á¦¸ñ:
³»¿ë:
°ü·Ã URL(¼±ÅÃ):
URL Á¦¸ñ(¼±ÅÃ):
°ü·Ã À̹ÌÁö URL:


[ ´ÙÀ½ ±Ûµé ] [ À̾ ±Û¿Ã¸®±â(´äÇϱâ) ] [ ÀÚ¹Ù ¹¯°í ´äÇϱâ ]