´Ù±¹¾î ÀÎÄÚµù ¹®Á¦
Á¦¸ñ : [Comment] ´Ù±¹¾î ÀÎÄÚµù ¹®Á¦ÀÇ À§Ä¡
¸¹Àº ºÐµéÀÌ ´Ù±¹¾î ¶§¹®¿¡ Çì¸ÞÀÌ°í ÀÖ½À´Ï´Ù.
ÀÌ¿¡ ´ëÇØ ÀúÀÇ ÂªÀº Áö½ÄÀÌÁö¸¸ °øÀ¯ÇÒ ±î Çؼ ÄÚ¸àÆ®¸¦ ´Þ¾ÆºÃ½À´Ï´Ù...
±ÛÀÇ ¿µ¾ç°¡´Â µÞºÎºÐ¿¡ ÀÖ½À´Ï´Ù.
½Ã°£ ¾øÀ¸½Å ºÐµé Àå¹®ÀÎ ¸¸Å µÞºÎºÐÀ» ÀоîÁֽʽÿÀ. ´Ù¸¸ ¹®ÀÚ¼ÂÀÇ ±âº»Àº --;;
ÀÌ ±Û¿¡¼± DB´Â ºÎºÐÀº ¹üÀ§¹ÛÀ̱⠶§¹®¿¡ ´Ù·çÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù.
»ç½Ç ´ëºÎºÐÀÇ ¹®Á¦´Â DB¿ÜÀÇ °÷¿¡¼ ¹ß»ýÇÒ
°ÍÀÔ´Ï´Ù.
Àú´Â, ¿£ÄÚµù¿¡¼ Á¦ÀÏ Áß¿äÇÑ °ÍÀ» ¾Æ·¡¿Í °°ÀÌ ºÐ·ùÇÏ¿´½À´Ï´Ù.
1. °¢ ¹®ÀÚ¼ÂÀÇ Á¾·ù¿Í ÀÌÇØ
2. ¼Ò½º ÆÄÀÏÀÇ ¿£ÄÚµù
ÇüÅÂ
3. ÄÄÆÄÀÏµÈ ÆÄÀÏÀÇ ¿£ÄÚµù ÇüÅÂ
4. ÄÄÆÄÀÏµÈ ÆÄÀÏÀ» »ç¿ëÇÏ´Â ¿£ÄÚµù ÇüÅÂ
5. UTF-8ÀÇ Çʿ伺 ÀνÄ.
6. WebBrowserÀÇ
ÀÌ»óÇÑ Çൿ(?)
"new String(str.getBytes("8859_1"), "EUC_KR");"
¿Í °°Àº ¹®Á¦´Â º°°³ÀÔ´Ï´Ù. (¹®ÀÚ¼ÂÀÇ Á¾·ù¿Í
ÀÌÇØ°¡ ¿ì¼±ÀÌÁö¿ä)
<
1¹ø¿¡¼ ÁÖÀÇÇØ¾ß ÇÒ °ÍÀº. Unicode¿Í Unicode(UTF-8)À» µ¿ÀϽà ¿©°Ü¼Å´Â ¾ÈµÈ´Ù´Â
°ÍÀÔ´Ï´Ù.
Unicode´Â ÄÚµåÆäÀÌÁö 1200À̸ç, Unicode(UTF-8)Àº 65001 ÀÔ´Ï´Ù.
±× Å©±â ¶ÇÇÑ
´Ù¸¨´Ï´Ù. (Çϴðú ¶¥Â÷ÀÌ -_-)
- Unicode¿Í Unicode(UTF-8)À» °£´Ü Á¤¸®
Unicode´Â ¸ðµç ¹®ÀÚ¸¦
2Byte·Î Ç¥½ÃÇÑ´Ù. - ISO-2022ÇüÅÂÀÇ ´Ù±¹¾î¿Í Â÷ÀÌÁ¡.
(¿µ¹®ÀÌ°í ´Ù±¹¾î°í ÇÊ¿ä¾ø´Ù. ¾î¶² ¾ð¾îµç 65536°¡Áö¸¦ Ç¥Çö
°¡´ÉÇÏ´Ù.
ÀÌ ¶æÀº 2Byte°¡ ¾î¶² ÇüÅ·Π±¸¼ºµÇ´ÂÁö¸¦ ¾Ë ¼ö ÀÖ°Ô ÇÏ´Â ¸».)
UTF-8Àº ±âÁ¸ ASCII 1xx±îÁö À¯ÁöÇÏ¸ç ´Ù±¹¾î´Â
2, 3Byte·Î Ç¥½ÃÇÑ´Ù.
(Áï, ¿µ¹®Àº 1Byteó¸® - ¾Æ·¡¿¡¼ ´Ù½Ã ¼³¸íÇϱ⠶§¹®¿¡ ¸Å¿ìÁß¿ä)
°í·Î, UTF-8Àº ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡ »ç¿ëÇÏ¿©µµ ¼Õ»öÀÌ
¾ø´Ù.
¡Ù´Ù±¹¾î - ¿©±â¼ ÇÊÀÚ ¸¾´ë·Î ÀçÁ¤ÀÇÇÑ ¶æÀ¸·Î ±âÁ¸ 2ByteÀÌ»óÀ» ÇÊ¿äÇÏ´ø ¾ð¾î.
(¿µ¾îµîµµ Æ÷ÇÔÇؼ ¸»ÇÑ´Ù°í µýÁö °ÉÁö ¸»¶õ
¶æ¿¡¼;;;)
>
<
2¹øÀ» ÀÌÇØÇÏÁö ¸øÇÏ¿´À» °æ¿ì¿¡´Â ÀÌ·¯ÇÑ ¹®Á¦µéÀÌ ¹ß»ýÇÕ´Ï´Ù.
°¡. ¸¸¾à ¼Ò½º°¡ JSPÀÏ °æ¿ì ÆÄÀÏÀ» IncludeÇÒ ¶§ A´Â Á¤»óÀε¥ B´Â ±úÁö°Å³ª
ÇÏ´Â ¹®Á¦ ¹ß»ý. (ȤÀº ±×
¹Ý´ë)
¡ØÁÖÀÇ! <%@ page contentType="text/html;charset=xxx"%> ¿Í´Â º°°³À̹ǷΠ¼Ò¿ë
¾ø½À´Ï´Ù.
³ª. *.java¸¦ ÄÄÆÄÀÏ ÇÑµÚ ´Ù±¹¾î »ç¿ë½Ã ±ú¾îÁ® ³ª¿Â´Ù. --;;
(staticÀ̳ª ºñ±³¹®µî¿¡ ¹Ì¸® ÀÔ·ÂÇØ ³õÀº
´Ù±¹¾î...)
¹°·Ð Runtime½Ã º¹±¸ÇÒ ¼ö ÀÖ´Â °æ¿ìµµ °ÚÁö¸¸ ±×·¸°Ô ÇÏ´Â »ç¶÷ ÀÖ´Ù¸é µûµ¹¸² ´çÇÑ´Ù´Â.... --;;
ÇØ°á¹ý :
°¡. ¼Ò½ºÆÄÀÏÀ» ¸¸µé¾î ÀúÀåÇÒ ½Ã¿¡ ÀÚ½ÅÀÌ ÀÛ¼ºÇÑ ¼Ò½ºÀÇ ¹®ÀÚ¼ÂÀ» È®ÀÎÇѵÚ
±× ¿Í µ¿ÀÏÇÏ°Ô ÀúÀåÇϵµ·Ï ÇÏ°í,
ÇÁ·ÎÁ§Æ®¿¡ °ü·ÃµÈ ¸ðµç ÆÄÀÏÀ» µ¿ÀÏÇÑ ¹®ÀÚ¼ÂÀ¸·Î ÀÛ¾÷ÇØ¾ß ÇÑ´Ù´Â...
<%@ page
contentType="text/html;charset=xxx"%>ÀÇ xxx¿¡ ÀÚ½ÅÀÌ ÀÛ¼ºÇÑ ¹®ÀÚ¼ÂÀ» µ¿ÀÏÇÏ°Ô ÀÔ·Â.
¸¸¾à ±âÁ¸¿¡
¹Ì¸® ¸¸µé¾îµÐ ¼Ò½º°¡ ÀÖÀ» °æ¿ì¶ó¸é ¹Ø¿¡¼ ´Ù½Ã ¾ð±ÞÇÏ°Ú½À´Ï´Ù.
³ª. ¼Ò»çÆÄÀÏÀ» ¸¸µé¾î ÀúÀåÇÒ ½Ã¿¡ ÀÚ½ÅÀÌ ÀÛ¼ºÇÑ ¼Ò½ºÀÇ ¹®ÀÚ¼ÂÀ»
È®ÀÎÇѵÚ
±× ¿¡ µû¶ó ÄÄÆÄÀÏ ÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù.
>
<
3, 4¹øÀÇ °æ¿ì´Â ÇöÀç·Î½á´Â °¡Á¤ÀÌ´Ù. (ȤÀº »ç½Ç - ¹°·Ð ³» ÀÚ½ÅÀº ¾ÆÁ÷ Á¢ÇÑÀûÀº ¾ø´Ù.)
ÄÄÆÄÀÏµÈ ÆÄÀÏÀÌ JVM¿¡ ÀÇÇÏ¿© ·ÎµùµÇ´Â °úÁ¤°ú RuntimeÀÇ °úÁ¤¿¡¼ ¿£ÄÚµùÀÌ ¼·Î´Ù¸¥ ÇüÅÂÀÇ
Class¸¦ ºÒ·¯ µé¿´´Ù¸é?
±×·¸´Ù¸é ÀÌÁß entrypoint°¡ Àִ Ŭ·¡½º°¡ µðÄÚµùÀÇ ±âÁØÀÌ
µÇ´Â °ÍÀϱî? ±×·¸´Ù¸é entrypoint¿ÜÀÇ Å¸ Ŭ·¡½º¿¡¼ »ç¿ëµÈ
´Ù±¹¾î´Â ¸ðµÎ ±ú¾îÁú °ÍÀÌ´Ù.
¾Æ´Ï¶ó¸é Ŭ·¡½º°£ È£Ãâ½Ã JVMÀº ±× ¿¡ µû¸¥ 󸮸¦ ÇؾßÇÑ´Ù. (´À·ÁÁø´Ù.)
¹°·Ð ÇöÀçÀÇ JVMÀº ÀϹÝÀûÀ¸·Î ¸ðµç ¼Ò½º¸¦ Unicode ȤÀº UTF-8·Î ºÒ·¯µéÀÏ Å×Áö¸¸ ¾Æ´Ò °æ¿ì´Â ¾îÂî ÇØ¾ß ÇÒ
±î?
(ÄÄÆÄÀÏµÈ ÆÄÀÏÀÇ ¿øº»ÀÇ ÇüÅ°¡ ¹¹°Ç Unicode ȤÀº UTF-8·Î º¯Çü)
ÀÌ·¸°Ô 3, 4¹øÀ» ³Ñ±âÀÚ --;;
>
<
5´Â 2¹øÀÇ °æ¿ì¸¸À¸·Îµµ UTF-8ÀÇ Çʿ伺À» ´À³¢Áö ¾ÊÀ» ¼ö ¾ø°Ú½À´Ï´Ù.
¹ø°Å·Ó°Ô °æ¿ì¿¡ µû¶ó ¼Ò½º¸¦ ´Ù½Ã ¿øÇÏ´Â ÇüÅ·Π¿£ÄÚµùÇÏ¿© ¸¸µé¾î¾ß ÇÑ´Ù´Â °ÍÀº
Tool°úÀÇ ³ë°¡´Ù¸¦ °¨ÇàÇؾßÇÑ´Ù´Â °ÍÀε¥
¸»ÀÌÁÒ.
±×·¯¹Ç·Î ÇÒ ÀÏ ¸¹(-_-)Àº ÇÁ·Î±×·¡¸Ó·Î½á´Â UTF-8À» »ç¿ëÇØ¾ß ÇÑ´Ù´Â...
¶ÇÇÑ, UTF-8ÀÇ Á¤·Ä¼Óµµ ÁäÀÔ´Ï´Ù. --b (Unicode¿ÍÀÇ
ºñ±³¸¦ Á¦¿ÜÇÑ´Ù¸é.)
ÇѱÛÀÌ ¸ðµÎ ¼øÂ÷¹è¿µÇ¾î Àֱ⠶§¹®ÀÔ´Ï´Ù. :)
±×¿¡ ºñÇØKSC5601(KSC5601-1992)´Â Á¤·Ä¼Óµµ´Â
¶³¾îÁø´Ù´Â... (°øÆ÷ÀÇ 8822ÀÚ)
>
<
Application¿¡¼ ÇÁ·Î±×·¥ ¼Ò½ºµî(*.JSP, *.JAVA, *.TXT)ÀÇ ¿£ÄÚµå ŸÀÔÀ» ÀÚµ¿À¸·Î
ÀνÄ!?!
°á·ÐÀº ÀÚµ¿ ÀÎ½Ä °¡´ÉÇÑ ¹®ÀÚ¼ÂÀÌ Àֱ⵵ ¾ø±âµµ ÀÔ´Ï´Ù.
ÀϹÝÀûÀ¸·Î 2Byte·Î µÈ ¹®ÀÚ¼ÂÀº ÀνÄÀÌ ºÒ°¡´É ÇÏÁö¸¸
Unicode´Â °¡´É ÇÕ´Ï´Ù.
ù ½ÃÀÛÀ» 16Áø¼ö·Î FF FE·Î ½ÃÀÛÇÏ´Â ¹®¼´Â Unicode¸¦ ¾Ë¸®´Â ¹®¼ÀÔ´Ï´Ù.
¶ÇÇÑ
Unicode(UTF-8)Àº ¼¸íÀÖ´Â Unicode(UTF-8) ¹®¼ÀÏ °æ¿ì´Â ´ëºÎºÐ °¡´ÉÇÕ´Ï´Ù.
¾ø´Â
°æ¿ì´Â °¡´ÉÇÑ ÅøÀÌ Àֱ⵵ ÇÏ°í¿ä. (¸»ÀÌ ÀÚµ¿À̱⠰ÅÀÇ °Á¦ --)
¸¸¾à ¼¸íÀÌ ÀÖ´Â °æ¿ì¶ó¸é EF BB BF·Î ½ÃÀÛÇÕ´Ï´Ù.
ÀÌ¿¡
µû¶ó °¢Á¾ Tool¿¡¼ ÀÚµ¿À¸·Î ÀÐÀ» ¼ö ÀÖ´Â °ÍÀÔ´Ï´Ù.
>
¼Ò½ºÀÇ ¹®ÀÚ¼ÂÀ» º¯°æ»ç¿ëÇϱâ...
ÀϹÝÀûÀ¸·Î ÇÁ·ÎÁ§Æ®ÀÇ ¸ðµç ¼Ò½º´Â ¿£ÄÚµù Çü½ÄÀÌ µ¿ÀÏÇØ¾ß ÇÏ°ÚÁÒ?
¸¸ÀÏ ±âÁ¸ ¼Ò½º°¡ Àִµ¥ ´Ù¸£´Ù¸é Çö ÇÁ·ÎÁ§Æ®¿Í ¸ÂÃß¾î¾ß ÇÒ
ÅÙµ¥...
½±°Ô ±¸ÇÒ ¼ö ÀÖ´Â ÅøÀº UltraEdit°¡ Á¤µµ°¡ µÇ°Ú³×¿ä Àú´Â v9.10À» °¡Áö°í ÀÖ°í
File ->
Conversions¿¡ ÀÖ½À´Ï´Ù. ÀÌ °÷¿¡¼ ¿øÇÏ´Â ÇüÅ·Π°¡´ÉÇÏ°Ú½À´Ï´Ù.
-´Ü, Çѱ۵éÀÇ ¹®Àڼº¯È¯ ÅøÀº ¾ÆÁ÷ º¸Áú ¸øÇßÀ½. Ȥ½Ã º¸½ÅºÐ ¼Õ ^^/
Çѱۿ¡¼ ÇÏÀ§º¯È¯Àº ¿Ïº®È÷ ¾ÈµÇ¹Ç·Î À̸¦
¿°µÎÇؾßÇÔ.
JSP¿¡¼ <%@ page contentType="text/html;charset=xxx"%>¿Í
META TAGÀÇ
contentType="text/html;charset=xxx"
À̵ÑÀ» »ç½Ç»ó ¸ðµÎ »ç¿ëÇÏ´Â °æ¿ì´Â ¿ôÁö ¸øÇÒ ÀÏÀÔ´Ï´Ù.
(½Ç·Î ´ë´ÜÇÑ À̽´ÀÔ´Ï´Ù.)
ÀÌ°÷
°Ô½Ã¹°Áß
----------------------------------------------------------------------------------
==°Ô½Ã¹°
1========================================================================
euc-kr
À̳ª ksc5601 À» »ç¿ëÇÒ °æ¿ì ºê¶ó¿ìÀúÀÇ
ÇѱÛÀº Àß ³ª¿Â´Ù.
´ë½Å È®ÀåÇѱÛÀ» Ç¥½ÃÇÒ ¼ö ¾ø¾î¼ ?? , ?d , ?? °°Àº ±ÛÀÚ´Â ? ·Î ±ú¾îÁ® ³ª¿Â´Ù.
¼Ò½ºº¸±â¸¦ Çصµ ¿ÏÀüÈ÷ ±úÁø´Ù.
...
...
Áß·«
...
¼¹öÂÊ ÇѱÛ󸮴 MS949 ·Î Á¤ÇÏ°í, ºê¶ó¿ìÀúÀÇ
ÇѱÛ󸮴 ksc5601, euc-kr
µîÀ¸·Î
ÇÑ´Ù. Áï ¼¹öÂÊÀº @page ÀÇ contentType ¼Ó¼ºÀ» charset=MS949 ·Î <head> ű×
³»ÀÇ
<meta> ű׿¡¼ Content-type ÀÇ °ªÀ» charset=ksc5601 ·Î ÁÖ¸é ºê¶ó¿ìÀúÂÊÀÇ
ÇѱÛ󸮸¦
¸¶¹«¸®ÁöÀ» ¼ö ÀÖ´Ù.
==°Ô½Ã¹°
2========================================================================
NOTE:
'??'°ú °°Àº È®ÀåÇѱÛÀÇ °æ¿ì´Â Ãß°¡ÀûÀÎ Å×½ºÆ®°¡ ÇÊ¿äÇÕ´Ï´Ù.
ÃßÁ¤ÄÁµ¥,
1) MS949(Cp949)¸¦
DB(Oracle,DB2,..)°¡ Áö¿øÇϴ°¡?
2) JVM file.encoding MS949->Cp949 ¿¡¼ Á¤»óÀûÀÎ µ¿ÀÛÀ»
Çϴ°¡?
3) default.client.encoding/client.encoding.override MS949->Cp949 ¿¡¼
Á¤»óÀûÀÎ
µ¿ÀÛÀ» Çϴ°¡?
4) À§ ÆÁ¹®¼Ã³·³ META tag¿¡¼ KSC5601À» ¹Ýµå½Ã ½á ÁÖ¾î¾ß
Çϴ°¡?
==°Ô½Ã¹°
3========================================================================
Windows¿¡¼ÀÇ
JVMÀÇ Çѱ۵ðÆúÆ® ÀÎÄÚµù ij¸¯Åͼ ¹®ÀÚ¿Àº "EUC_KR" ÀÔ´Ï´Ù.
Linux¿¡¼± "KSC5601"ÀÌ¶ó ³ª¿À´Â ±º¿ä.
±×·¯³ª "EUC_KR", "KSC5601", "EUC-KR"Àº ¸ðµÎ
µ¿ÀÏÇÕ´Ï´Ù.
==================================================================================
----------------------------------------------------------------------------------
ÀÌ·±
³»¿ëÀÌ ÀÖ¾ú½À´Ï´Ù.
MS949´Â ¾ö¹ÐÈ÷ "KSC5601-1987" ÀÔ´Ï´Ù. ¶ÇÇÑ "KSC5601-1992" ÀÔ´Ï´Ù.
KSC5601À̵éÀÇ Â÷ÀÌÁ¡Àº 1992´Â 1987¸¦
¸ðµÎ Æ÷ÇÔÇÏ°í ¹®ÀÚÀÇ À§Ä¡±îÁö ȣȯÀÌ µÇ¸ç
1987¿¡ Ãß°¡µÈ ¹®ÀÚ 8822(°øÆ÷ÀÇ)°³°¡ ÀÖ´Ù´Â °Í »ÓÀÔ´Ï´Ù.
(ÇöÀç MS OS¿¡¼´Â
´Ü¼øÇÑ ÆùÆ®Â÷ÀÌ·Î ºÁµµ ¹«¹æ)
±×·¯¹Ç·Î ÀϹÝÀûÀ¸·Î KSC5601¶ó°í ÅëÇÕÇÏ¿© »ç¿ëÇÏ´Â
°ÍÀÔ´Ï´Ù.
(¾ö¹ÐÈ÷ MS949´Â META TAG¿¡¼ windows-949 ȤÀº ks_c_5601-1987 ¿¡ ÇØ´çÇÕ´Ï´Ù.)
±×·¯´Ï À§¿¡ ¾ð±ÞµÈ °Ô½Ã¹°¿¡ ÀÖ´Â MS949°ü·Ã »ç°ÇµéÀº ¹«È¿-_-°¡ ¾Æ´Ò±î¿ä?
¹«½¼ ÀǹÌÀΰí ÇÏ´Ï EUC-KR(Extended Unix Code-Korean)¿¡¼´Â ?åÀ? ±úÁöÁö¸¸ KSC5601Àº ±úÁöÁö ¾Ê½À´Ï´Ù.
¾±, ??,
??, ??, ?äÀ? ºñ±³Çغ¸¸é EUC-KRÀº ¾±¸¸À» Ç¥ÇöÇÒ »Ó ÀÔ´Ï´Ù.
KSC5601-1992´Â È®ÀåÀ» Ç¥ÇÔÇÕ´Ï´Ù. (¹°·Ð
UTF-8°ú´Â ºñ±³ÇÒ °ÍÀÌ ¸øµÇÁö¸¸...)
ÇÏÁö¸¸
EUC-KRÀº È®ÀåÀ» Æ÷ÇÔÇÏÁö ¾Ê½À´Ï´Ù.
(À§ÀÇ °Ô½Ã¹° 3Àº 2000/05/28ÀÏÀÚ·Î ¿À·¡µÇ¾ú±â¿¡
±× ½ÃÀý KSC5601 = EUC-KR ¶ó°í ÇÑ Ç¥ÇöÇÑ °ÍÀº
±×´ÙÁö ¹®Á¦ »ïÀ»ÇÊ¿ä´Â ¾ø´Âµí --;;
´Ù¸¸ Àú °Ô½Ã¹°À» º¸°í ¾ÆÁ÷ ¸Â´Ù°í »ý°¢ÇϽô ºÐµéÀ» À§ÇÏ¿© ¾ð±ÞÇÏ¿´À½.)
¾î·µç ¾î¶°ÇÑ È¯°æÀÌ´ø WebBrowser°£¿£ ¾î¶² ¹®ÀÚ¼ÂÀÌ°Ç ½ÖÅëÇÕ´Ï´Ù.
(ÀÌÁ¡ÀÌ Áß¿äÇÕ´Ï´Ù. ¿Ö ±ú¾îÁ®¾ßÇÒ È®Àå ±Û¾¾°¡
Á¤»ó Ç¥½ÃµÇ´ÂÁö¸¦ ÀÌÁ¦ ¼³¸íÇÕ´Ï´Ù.
-MS Win XP¿¡¼ IE 6.0°ú Nescape Navigator 7.0À» Å×½ºÆ® Çغ½.
Linux, Unix¿¡¼ ¾ÈÇغ½)
Á¦°¡ À§¿¡¼ ¾ð±ÞÇÑ È®Àå±Û¾¾°¡ ¿Ö ÀÌ°÷ °Ô½ÃÆÇÀÌ EUC-KRÀÓ¿¡µµ ºÒ±¸ÇÏ°í ±úÁöÁö ¾Ê°í Á¤»óÀ¸·Î º¸Àϱî¿ä?
WebBrowser´Â(¾î¼¸é OS·¹º§) HTML ¼Ò½ºÀÇ ¹®ÀÚ¼ÂÀÌ ¹¹°Ç Unicode (´Ü, UTF-8 ¹®ÀÚ¼ÂÀº Á¦¿Ü)·Î º¯È¯½Ãŵ´Ï´Ù.
±×¸®°í
ȸ鿡 Ãâ·ÂÇÕ´Ï´Ù. ÀÌ ¶§ Çʵå(INPUT TAG, TEXTAREA TAGµî)¿¡ ÀÔ·ÂÇÑ °ª ¿ª½Ã
´ç¿¬ Unicode(UTF-8ÀÎÁö´Â Á¤È®È÷ È®ÀÎÇÏÁö ¾Ê¾ÒÀ½. ÇÏÁö¸¸ UTF-8¹®ÀÚ¼ÂÀº ±×´ë·Î UTF-8) µ¥ÀÌÅÍ ÀÔ´Ï´Ù.
(´«À¸·Î´Â ±¸ºÐ
¸øÇÏÁÒ.)
±×·¡¼ ÀÔ·ÂÇÒ ´ç½Ã¿¡´Â ¸ðµç ¹®ÀÚ¸¦ ÀÔ·ÂÇÒ ¼ö°¡ ÀÖ´Â °ÍÀÔ´Ï´Ù.
Ç㳪 °ªÀ» ¼¹ö·Î º¸³»¸é HTTP Header (ȤÀº
META TAG)¿¡ Á¤ÀÇµÈ ¹®ÀÚ¼ÂÀ¸·Î ÄÁ¹öÆà ÇÕ´Ï´Ù.
(Server·Î Àü¼ÛµÇ´Â TCP/IP µ¥ÀÌÅ͸¦ º¸¸é Áõ¸í °¡´É)
ÀÌ ¶§ ÄÁ¹öÆÃ
ºÒ°¡´ÉÇÑ ¹®ÀÚ´Â &# + Unicode°ª À¸·Î º¯°æµË´Ï´Ù. ±×·¸°Ô ¼¹ö·Î ³¯¶ó°¡´Â °ÍÀÔ´Ï´Ù.
(ÀÌ °ª¸¸À¸·Îµµ ¾Ë ¼ö ÀÖ°ÚÁö¸¸
EUC-KRÀº KSC5601¿¡ ºñÇØ È®ÀåÇѱÛÀÌ
ºÎÁ·ÇÏ´Ü°ÍÀ» ¾Ë ¼ö ÀÖ½À´Ï´Ù.)
¸¸¾à ¼¹ö¿¡ ³¯¶ó°£ ¿£ÄÚµù ŸÀÔÀÌ KSC5601ÀÌ¿´Áö¸¸ ±úÁö´Â ¹®ÀÚ°¡ ÀÖ¾ú´Ù¸é, ±×
±úÁö´Â ¹®ÀÚ´Â
&# + Unicode ÇüÅ·Π°è¼Ó º¸Á¸µÇ°Ô µÇ´Â °ÍÀÔ´Ï´Ù. DB¿¡ ¿ª½Ã ±×·¸°Ô ÀԷµ˴ϴÙ.
±×·¸´Ù°í ÇÑ´Ù¸é
´«Ä¡ºü¸¥ ºÐµéÀº ¹ú½á ÇÑ°¡Áö ÀÌ»óÀÇ ¹®Á¦¸¦ ÁöÀûÇÏ½Ç °ÍÀÔ´Ï´Ù.
ù°. &# + Unicode ·Î Ç¥ÇöµÈ ¹®Àڴ Ư¼ö󸮸¦ ÇÏÁö ¾Ê´Â´Ù¸é ¿µ¿øÈ÷ ±×·¸°Ô µÇ¾î ÀÖ´Ù´Â °ÍÀ»...
(¸¹Àº ¹®ÀÚ¼ÂÀ»
º¸½Ã¸é ¾Ë°ÚÁö¸¸ ACSII´Â À¯ÁöµÇ±â ¶§¹®ÀÔ´Ï´Ù.)
°í·Î, WebBrowser ÀÌ¿ÜÀÇ °÷¿¡¼´Â ¹®Á¦°¡ --;;
-ÀÌ ¶§¹®¿¡ DB¿¡¼
°Ë»öÇÒ °æ¿ì¿¡ ¹®Á¦°¡ ÀÖ´Ù.
µÑ°. ±âÁ¸ &# + Unicode¸¦ ÃßÈÄ Unicode, UTF-8µî¿¡ ¸¶À̱׷¹ÀÌ¼Ç ÇÒ ¶§ µû·Î ÀÛ¾÷ ÇØ¾ß ÇÒ
°ÍÀÔ´Ï´Ù.
(Á¦°¡ ¾ÆÁ÷ ÀÚµ¿º¯°æÇØÁÖ´Â ÅøÀº ¸ø ºÃ½À´Ï´Ù. --;;
¹¹ ±×¸® ¾î·Á¿î°Ç ¾Æ´ÏÁö¸¸ ¾çÀÌ Å©¸é Å«ÀÏÀÎ °Í ¸¸Àº
È®½ÇÇÕ´Ï´Ù.)
¼Â°. DBÀÇ ÇʵåÀÇ ±æÀÌ°¡ °³¹ßÀÚ°¡ ¿øÇß´ø ±æÀ̸¦ ¹þ¾î³¯ ¼öµµ ÀÖ´Â ¹®Á¦.
&# + Unicode´Â ÃÖ´ë 7ÀÚÀÇ ±æÀ̸¦
°¡Áý´Ï´Ù. (MAX : 𐀀) ±×·³ EUC-KRÀ̳ª KSC5601·Î DB¿ë·® ¾Æ³¢·Á´Ù
Çʵå±úÁö°í
Çʵå±æÀÌ Á¦ÇÑ ¾øÀ¸¸é ¿ÀÈ÷·Á UnicodeȤÀº UTF-8º¸´Ù ¿ë·®¸¸ Áõ°¡ÇÏ°í --;;
³Ý°. °£È¤ °Ô½Ã¹°µî ³»¿ëÀ» º¸¸é &# + Unicode°ªÀÌ ±× ´ë·Î º¸ÀÌ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
ÀÌÀ¯´Â Á¦°¡ ÀÏÀü¿¡ ¿Ã¸° °Ô½Ã¹°
³»¿ë¿¡µµ ¾ð±ÞÇßµí & À» &·Î º¯ÇüÇÏ¿´±â ¶§¹®ÀÔ´Ï´Ù.
Áï, &¸¦ &·Î ¿ø·¡´ë·Î ³õÀ¸¸é ÷¿¡
ÀÔ·ÂÇßÀ» ´ç½ÃÀÇ ¹®ÀÚ°¡ º¸ÀÌ´Â °ÍÀÔ´Ï´Ù.
´Ù¼¸Â°. ¾î¼¸é MS¿ÜÀÇ OSȯ°æÀº ±× ¹®ÀÚ¸¦ Ç¥ÇöÇÒ ¹æ¹ýÀº Ư¼ö󸮸¦ ÇÏÁö ¾Ê´Â ÀÌ»ó
ÇöÀç·Î½á´Â ¾øÀ» ¼öµµ ÀÖ½À´Ï´Ù. (Á¦°¡
Linux, Unix¿¡¼± ¾ÈÇغ»Áö¶ó --;;)
Âü°í.
'?' <- ÀÌ ¹®ÀÚ´Â Unicode¿Í UTF-8¹®ÀÚ¼ÂÀÌ ¾Æ´Ï¸é
±úÁý´Ï´Ù.
WebBrowser¿¡¼ º¸´Â µ¥´Â ÁöÀå ¾ø½À´Ï´Ù. Áö±Ýµµ º¸À̽ÃÁÒ?
ÀÌ '?'´Â ¼¹ö¿¡ Àü´Þ µÉ ¶§ 葶
ÀÌ·¸°Ô º¯ÇüµÇ¾î Àü´Þ µË´Ï´Ù.
(Áö±Ý ÀÌ °Ô½ÃÆÇ¿¡¼ WebBrowserÀÇ ¼Ò½ºº¸±â¸¦ Çصµ ¾Ë ¼ö ÀÖ½À´Ï´Ù.)
Á¤¸®ÇÏÀÚ¸é
1. Á¤¸»ÀÌÁö UTF-8Àº ²À ÇÊ¿äÇϸç (Çѱ۸¸ »ç¿ëÇÑ´Ù ÇÒ Áö¶óµµ)
ÇÊ¿äÇÑ ½Ã±â´Â Áö±ÝÀÔ´Ï´Ù.
2. MS949 ¿Í KSC5601Àº °°À¸´Ï À§¿¡¼ ¾ð±ÞÇÑ
MS949»ç°Ç(?)Àº Á¤È®¼ºÀ» À§ÇØ
¿©·¯ ȯ°æ¿¡¼ (JAVAÀÇ °¢ ¹öÁ¯º° µîµî) Àç Å×½ºÆÃÀÌ ÇÊ¿äÇÒ °ÍÀ¸·Î »ç·áµË´Ï´Ù.
- ½ÇÁ¦ Á¦°¡
MS949·Î ¼¹ö¿¡¼ 󸮶ó´Â °÷¿¡ °¡¼ HTTPÇÁ·ÎÅäÄÝ·Î Àü¼ÛµÇ´Â °ªÀ» È®ÀÎÇÑ °á°ú
KSC5601°úÀÇ Â÷À̸¦ ¸ø
ºÃ½À´Ï´Ù.
Servlet, JSP, HTMLÆäÀÌÁö = ksc5601·Î Çؼ ´Ù½Ã Çѹø Å×½ºÆ® Çغ¸¼ÌÀ¸¸é
ÇÔ.
3. WebBrowser°¡ ¹öÁ¯°ú OSº°·Î ¾î¶°ÇÑ ÇüÅ·Π¼¹ö¿¡ °ªÀ» Àü´ÞÇÏ´ÂÁö Á¤È®È÷ ¾Ë¾Æ¾ß ÇÕ´Ï´Ù.
¶ÇÇÑ ÀÌ ¶§¹®¿¡ JSPµî
WebBrowser¿Í Åë½ÅÇϴ ó¸®´Â DBÀÇ Æ¯¼ºÀ» ¾Èź´Ù°í ºÁµµ ¹«¹æ.
(´ëºÎºÐ DBÀÇ ¿£ÄÚµùÀ» EUC-KR, KSC5601·Î ÇÏ°í ÇÁ·Î±×·¥ ¿ª½Ã ±×·¸°Ô
Â¥±â¿¡)
4. JAVA¿¡¼ EUC-KRÀ» »ç¿ëÇÏ½Ç °Å¶ó¸é KSC5601À» ÃßõÇÕ´Ï´Ù.
(´Ü, Á¤·Ä½Ã
¼ÓµµÀúÇÏ È¤Àº ¾û¶×ÇÑ ¼ø¼ ¿ì·Á)
5. EUC-KR°ú KSC5601ÀÇ »óÈ£º¯È¯À» Çã¿ëÇÏÁö ¸»ÀÚ. (ƯÈ÷
KSC5601-1992¿¡ ¹®Á¦°¡ ÀÖÀ½)
¡Ø ¹®ÀÚ´Â bits¿Í FontÀÇ Àå³À̶õ°É ÀØÁö ¸¶¼¼¿ä.
(FontÀÇ À峿¡ Ưº°È÷ ÁÖÀÇÇϽʽÿÀ.
bits°ªÀº Á¤»óÀε¥
OSµû¶ó Ç¥½ÃµÇÁö ¾Ê´Â °æ¿ìµµ ÀÖ°í Tools¿¡ µû¶ó Ç¥½ÃµÇÁö ¾Ê´Â °æ¿ìµµ...
±×·¯¹Ç·Î ¹®Á¦°¡ µÇ´Â °÷¿¡¼´Â Ç×»ó bits°ªÀ» È®ÀÎÇÏ´Â
½À°üÀ»...)
Áö±Ý²¯ Á¤¸®°¡ ¾ÈµÇ¾ú´Ù¸é ¾ÈµÈ Àå¹® ÀоîÁÖ½Å°Í °¨»çµå¸³´Ï´Ù.
À߸øµÈÁ¡ ÀÖÀ¸¸é ÁöÀûÇÏ¿© Áֽñ¸¿ä
°Ç½ÂÇϽʽÿÀ.
==================================================================================
ÀÌ
±ÛÀº EmotionalBrainÀÌ ÀÛ¼ºÇÏ¿´À¸¸ç óÀ½ °Ô½ÃµÈ °÷Àº www.javaservice.net (»õ âÀ¸·Î ¿±â)
ÀÔ´Ï´Ù.
ÀÌ ±ÛÀ» ¾îµð¿¡ »ç¿ëÇϵç ÀÛ¼ºÀÚ¿Í ¿ø Ãâó´Â Áö¿ï ¼ö ¾ø½À´Ï´Ù.
2002.12.01
==================================================================================
P.S
À§¿¡ "°Ô½Ã¹° 1" ¿¡¼ ¾ð±ÞµÈ ³»¿ëÀ» Àá±ñ ¸»ÇÏÀÚ¸é
JSP¿¡¼ <%@ page
contentType="text/html;charset=XXX"%> ¶ó°íÇÏ¸é ¾Æ½Ã°ÚÁö¸¸
XXX°¡ META TAGº¸´Ù HTTP
Header¿¡ Context-TypeÀÌ ¸ÕÀú ³¯¶ó°©´Ï´Ù.
ÀÌ ¶§ JSP¿¡¼ MS949¶ó°í Çϸé HTTP Header¿¡¼µµ MS949¶ó
³¯¶ó°¡´Âµ¥ WebBrowser¿¡ ±×·±°Ô
¾ø´Ù´Â °É °¨¾ÈÇϸé JAVAÀÇ È²´çÇÔÀÌ --;;
MS949´Â ¾ö¹ÐÈ÷ ¸»Çϸé META TAG¿¡¼
"windows-949" ȤÀº "ks_c_5601-1987" ¿¡ ÇØ´çÇϴµ¥
±×´ë·Î "MS949"°¡ -_-;;
±×´ö¿¡ META TAG¿¡
µû·Î windows-949³ª "ks_c_5601-1987"¸¦ ¹«Á¶°Ç ³Ö¾î¾ß ÇÑ´Ù´Â...
¾îÂîµÆ°Ç MS949´Â KSC5601À̱⠶§¹®¿¡ KSC5601·Î¸¸ ¸ðµÎ ó¸®Çϸé MS949´Â ÇÊ¿ä
¾ø½À´Ï´Ù.
P.S 2
ÀÌ°Å ÀÛ¼ºÇÒ¶ó±¸ ÀÌ°Í°ú °ü·ÃµÈ À©µµ¿ì ⸸ Áö±Ý 30°³°¡ ¶° Àֳ׿ä --;;
¹«·Á 5½Ã°£ Çãºñ --;;
(È®½ÇÇÏ°Ô ¾²·Á±¸ ¸¹Àº ³ë·ÂÀ» Ç߱⿡...)
NavigatorµÎ MS OS¿¡ ÷ ±ò¾Æº¸°í --;;
(±Ùµ¥ Á¦ ÄÄÀÌ »¡¶ó¼ÀÎÁö
Navigator°¡ ¿¹Àü¿¡ ºñÇØ ½ÇÇà¼Óµµ ¹«Áö »¡¶óÁ³³×¿ä!)
Á¦¸ñ : Re: encoding °ü·Ã url
±Û¾´ÀÌ:
Ç㱤³²(heogn) 2002/12/03 11:42:33 Á¶È¸¼ö:8 ÁÙ¼ö:36
°Ô½Ã¹°1 ÀÇ ÀúÀÚÀÔ´Ï´Ù.
EB ´ÔÀÇ
¸í¼ºÀº ÀÍÈ÷ º¸¾Æ¿Â ¹Ù¶ó Á¦ ±ÛÀ» Åä´ë·Î ¿¬±¸°á°ú¸¦ °øÀ¯ÇØÁּż °¨»çµå¸³´Ï´Ù.
(»ç½Ç Á» ¶ß²ûÇß½À´Ï´Ù. ^^;)
MS949 ´Â
CP949 ¿Í °°´Ù´Â °Í
iana ¿¡´Â ºüÁ®ÀÖ´Â ¹®ÀÚ¼ÂÀ̸ç À©µµ¿ìÁî¿Í java Áø¿µ¿¡¼ °øÀ¯ÇÏ´Â OS ±â¹ÝÀÇ ¹®ÀÚ¼Â
¶ó´Â
°Í
Á¦°¡ ÀÌÇØÇÏ°í ÀÖ´Â °ÍÀ̾ú°í, EB´ÔÀÇ ±Ûó·³ ÇѱÛÀÇ ÇÑ°è»óȲÀ» ³Ñ¾î°¡´Âµ¥´Â UTF-8
¹®ÀÚ¼ÂÀ» Çؾߵȴٴ °Í¿¡
°ø°¨ÇÕ´Ï´Ù.
Hangul and Internet in Korea FAQ ½ÅÁ¤½Ä´Ô 8¹ø±Û Âü°í
http://jshin.net/faq/index.html (»õ âÀ¸·Î
¿±â)
iana ¿¡ µî·ÏµÈ ¹®Àڼ¿¡ °üÇÑ ¸µÅ©
http://www.iana.org/assignments/character-sets (»õ âÀ¸·Î ¿±â)
cp949 ÀÇ unicode mapping table
http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP949.TXT
(»õ âÀ¸·Î ¿±â)
Extended Encoding Set (contained in i18n.jar)
http://www.mobilejava.co.kr/bbs/temp/lecture/personal/encoding.html
(»õ âÀ¸·Î ¿±â)
À±°æ±¸´Ô°ú ±èÇÊÈ£´ÔÀÇ Cp949 ¿¡ °üÇÑ ±Û
http://java.freehosting.co.kr/java/messages/1297.html (»õ âÀ¸·Î ¿±â)
»ç½Ç ¾ÆÁ÷ Á¤¸®°¡ ¿ÏÀüÈ÷ ¾ÈµÈ »óÅÂÀÔ´Ï´Ù.
EB´ÔÀÇ ±ÛÀ» Àú ¶ÇÇÑ Âü°íÇÏ°í µÎ°¡Áö ÀÎÄÚµùÀ» Ç¥½ÃÇؾߵǴ ¿ì½º²Î½º·± jsp
ÄÚµù½ºÅ¸ÀÏÀ» »¡¸® ¹þ¾î³ª¾ß°Ú½À´Ï´Ù.(^^; ¾ðÁ¦°¡ µÉÁö´Â Àúµµ... )
ÇູÇϼ¼¿ä.
---------------------------------
jakarta-seoul project
jakarta ¹®¼ ÇѱÛÈ »çÀÌÆ®
http://www.apache-korea.org (»õ âÀ¸·Î ¿±â)
---------------------------------
http://okjsp.pe.kr (»õ âÀ¸·Î ¿±â)
from:
http://www.javaservice.net/~java/bbs/read.cgi?m=devtip&b=servlet&c=r_p&n=1038800530&p=1&s=t#1038800530
(»õ âÀ¸·Î ¿±â)
[Ãâó] ´Ù±¹¾î ÀÎÄÚµù ¹®Á¦|ÀÛ¼ºÀÚ È²±Ý½Ò