성태의 닷넷 이야기
홈 주인
모아 놓은 자료
프로그래밍
질문/답변
사용자 관리
사용자
메뉴
아티클
외부 아티클
유용한 코드
온라인 기능
MathJax 입력기
최근 덧글
[정성태] Java - How to use the Foreign Funct...
[정성태] 제가 큰 실수를 했군요. ^^; Delegate를 통한 Bein...
[정성태] Working with Rust Libraries from C#...
[정성태] Detecting blocking calls using asyn...
[정성태] 아쉽게도, 커뮤니티는 아니고 개인 블로그입니다. ^^
[정성태] 질문이 잘 이해가 안 됩니다. 우선, 해당 소스코드에서 ILis...
[양승조
] var대신 dinamic으로 선언해서 해결은 했습니다. 맞는 해...
[양승조
] 또 막혔습니다. ㅠㅠ var list = props[i].Ge...
[양승조
] 아. 감사합니다. 어제는 안됐던것 같은데....정신을 차려야겠네...
[정성태] "props[i].GetValue(props[i])" 코드에서 ...
글쓰기
제목
이름
암호
전자우편
HTML
홈페이지
유형
제니퍼 .NET
닷넷
COM 개체 관련
스크립트
VC++
VS.NET IDE
Windows
Team Foundation Server
디버깅 기술
오류 유형
개발 환경 구성
웹
기타
Linux
Java
DDK
Math
Phone
Graphics
사물인터넷
부모글 보이기/감추기
내용
<div style='display: inline'> <h1 style='font-family: Malgun Gothic, Consolas; font-size: 20pt; color: #006699; text-align: center; font-weight: bold'>CultureInfo.GetCultures가 반환하는 값</h1> <p> 아래의 문서에 보면,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > CultureTypes 열거형 ; <a target='tab' href='https://learn.microsoft.com/ko-kr/dotnet/api/system.globalization.culturetypes'>https://learn.microsoft.com/ko-kr/dotnet/api/system.globalization.culturetypes</a> </pre> <br /> CultureInfo.GetCultures로 얻을 수 있는 목록의 유형이 다음과 같다고 나옵니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > [ComVisible(true)] [Flags] public enum CultureTypes { NeutralCultures = 1, SpecificCultures = 2, InstalledWin32Cultures = 4, AllCultures = 7, UserCustomCulture = 8, ReplacementCultures = 16, WindowsOnlyCultures = 32, FrameworkCultures = 64 } </pre> <br /> 이 중에서 다음의 2개는 현재 사용하지 않는다고 하는데,<br /> <br /> <ol> <li>FrameworkCultures</li> <li>WindowsOnlyCultures</li> </ol> <br /> FrameworkCultures는 아마도 .NET Framework 2.0 호환으로만 남아 있는 것 같고, WindowsOnlyCultures는 문서 상으로는 빈 배열을 반환한다고 하는데 이는 .NET 4.0 이상의 환경에서 그런 것이고 2.0에서 테스트해 보면 여전히 (제 시스템의 경우 125개 항목을 가진) 값을 반환하고 있습니다.<br /> <br /> 그럼, ^^ 나머지 값에 대해 어떻게 차이가 있는지 한번 테스트를 해볼까요? ^^<br /> <br /> CultureTypes의 첫 번째 항목인 NeutralCultures 목록을 먼저 확인해 보겠습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > cultures = CultureInfo.GetCultures(CultureTypes.NeutralCultures); SortedDictionary<string, string> sorted = new SortedDictionary<string, string>(); foreach (CultureInfo culture in cultures) { string name = string.Format("0x{0:x} {1} {2}", culture.LCID, culture.TwoLetterISOLanguageName, culture.EnglishName); sorted[culture.LCID] = name; } foreach (var item in sorted) { Console.WriteLine(string.Format("{0} \t {1}", item.Key, item.Value)); } /* 출력 결과: 1 1 0x1 ar Arabic 2 2 0x2 bg Bulgarian 3 3 0x3 ca Catalan 4 4 0x4 zh Chinese (Simplified) 5 5 0x5 cs Czech 6 6 0x6 da Danish 7 7 0x7 de German 8 8 0x8 el Greek 9 9 0x9 en English 10 10 0xa es Spanish 11 11 0xb fi Finnish 12 12 0xc fr French 13 13 0xd he Hebrew 14 14 0xe hu Hungarian 15 15 0xf is Icelandic 16 16 0x10 it Italian 17 17 0x11 ja Japanese 18 18 0x12 ko Korean 19 19 0x13 nl Dutch 20 20 0x14 no Norwegian 21 21 0x15 pl Polish 22 22 0x16 pt Portuguese 23 24 0x18 ro Romanian 24 25 0x19 ru Russian 25 26 0x1a hr Croatian 26 27 0x1b sk Slovak 27 28 0x1c sq Albanian 28 29 0x1d sv Swedish 29 30 0x1e th Thai 30 31 0x1f tr Turkish 31 32 0x20 ur Urdu 32 33 0x21 id Indonesian 33 34 0x22 uk Ukrainian 34 35 0x23 be Belarusian 35 36 0x24 sl Slovenian 36 37 0x25 et Estonian 37 38 0x26 lv Latvian 38 39 0x27 lt Lithuanian 39 41 0x29 fa Persian 40 42 0x2a vi Vietnamese 41 43 0x2b hy Armenian 42 44 0x2c az Azeri 43 45 0x2d eu Basque 44 47 0x2f mk Macedonian 45 54 0x36 af Afrikaans 46 55 0x37 ka Georgian 47 56 0x38 fo Faroese 48 57 0x39 hi Hindi 49 62 0x3e ms Malay 50 63 0x3f kk Kazakh 51 64 0x40 ky Kyrgyz 52 65 0x41 sw Kiswahili 53 67 0x43 uz Uzbek 54 68 0x44 tt Tatar 55 70 0x46 pa Punjabi 56 71 0x47 gu Gujarati 57 73 0x49 ta Tamil 58 74 0x4a te Telugu 59 75 0x4b kn Kannada 60 78 0x4e mr Marathi 61 79 0x4f sa Sanskrit 62 80 0x50 mn Mongolian 63 86 0x56 gl Galician 64 87 0x57 kok Konkani 65 90 0x5a syr Syriac 66 101 0x65 dv Divehi <span style='color: blue; font-weight: bold'>67 127 0x7f iv Invariant Language (Invariant Country)</span> 68 31748 0x7c04 zh Chinese (Traditional) 69 31770 0x7c1a sr Serbian */ </pre> <br /> 보는 바와 같이 Region이 없는 것을 의미합니다. 이 중에서 특이한 값이 있다면 LCID == 127에 해당하는 "Invariant Language"입니다. 즉, Region이 없는 경우는 물론이고 언어 영역 조차도 중립적인 값을 포함하고 있습니다.<br /> <br /> Region 영역을 명시한 Locale을 열람하고 싶다면 SpecificCultures를 사용하면 됩니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > CultureInfo[] cultures = CultureInfo.GetCultures(<span style='color: blue; font-weight: bold'>CultureTypes.SpecificCultures</span>); foreach (CultureInfo culture in cultures) { RegionInfo region = new RegionInfo(culture.LCID); string ietfLanguageTag = string.Format("{0}-{1}", culture.Parent.TwoLetterISOLanguageName, region.TwoLetterISORegionName); string name = string.Format("{0} - {1}", region.EnglishName, culture.Parent.EnglishName); sorted[ietfLanguageTag] = name; } </pre> <br /> 제 윈도우 10의 경우 다음과 같은 출력 결과를 보입니다.<br /> <br /> <pre style='height: 400px; margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > 1 1025 0x401 ar-SA Saudi Arabia - Arabic 2 1026 0x402 bg-BG Bulgaria - Bulgarian 3 1027 0x403 ca-ES Spain - Catalan 4 1028 0x404 zh-TW Taiwan - Chinese (Traditional) 5 1029 0x405 cs-CZ Czech Republic - Czech 6 1030 0x406 da-DK Denmark - Danish 7 1031 0x407 de-DE Germany - German 8 1032 0x408 el-GR Greece - Greek 9 1033 0x409 en-US United States - English 10 1035 0x40b fi-FI Finland - Finnish 11 1036 0x40c fr-FR France - French 12 1037 0x40d he-IL Israel - Hebrew 13 1038 0x40e hu-HU Hungary - Hungarian 14 1039 0x40f is-IS Iceland - Icelandic 15 1040 0x410 it-IT Italy - Italian 16 1041 0x411 ja-JP Japan - Japanese 17 1042 0x412 ko-KR Korea - Korean 18 1043 0x413 nl-NL Netherlands - Dutch 19 1044 0x414 no-NO Norway - Norwegian 20 1045 0x415 pl-PL Poland - Polish 21 1046 0x416 pt-BR Brazil - Portuguese 22 1047 0x417 iv-CH Switzerland - Invariant Language (Invariant Country) 23 1048 0x418 ro-RO Romania - Romanian 24 1049 0x419 ru-RU Russia - Russian 25 1050 0x41a hr-HR Croatia - Croatian 26 1051 0x41b sk-SK Slovakia - Slovak 27 1052 0x41c sq-AL Albania - Albanian 28 1053 0x41d sv-SE Sweden - Swedish 29 1054 0x41e th-TH Thailand - Thai 30 1055 0x41f tr-TR Turkey - Turkish 31 1056 0x420 ur-PK Islamic Republic of Pakistan - Urdu 32 1057 0x421 id-ID Indonesia - Indonesian 33 1058 0x422 uk-UA Ukraine - Ukrainian 34 1059 0x423 be-BY Belarus - Belarusian 35 1060 0x424 sl-SI Slovenia - Slovenian 36 1061 0x425 et-EE Estonia - Estonian 37 1062 0x426 lv-LV Latvia - Latvian 38 1063 0x427 lt-LT Lithuania - Lithuanian 39 1064 0x428 iv-TJ Tajikistan - Invariant Language (Invariant Country) 40 1065 0x429 fa-IR Iran - Persian 41 1066 0x42a vi-VN Vietnam - Vietnamese 42 1067 0x42b hy-AM Armenia - Armenian 43 1068 0x42c az-AZ Azerbaijan - Azeri 44 1069 0x42d eu-ES Spain - Basque 45 1070 0x42e iv-DE Germany - Invariant Language (Invariant Country) 46 1071 0x42f mk-MK Macedonia (FYROM) - Macedonian 47 1072 0x430 iv-ZA South Africa - Invariant Language (Invariant Country) 48 1073 0x431 iv-ZA South Africa - Invariant Language (Invariant Country) 49 1074 0x432 iv-ZA South Africa - Invariant Language (Invariant Country) 50 1075 0x433 iv-ZA South Africa - Invariant Language (Invariant Country) 51 1076 0x434 iv-ZA South Africa - Invariant Language (Invariant Country) 52 1077 0x435 iv-ZA South Africa - Invariant Language (Invariant Country) 53 1078 0x436 af-ZA South Africa - Afrikaans 54 1079 0x437 ka-GE Georgia - Georgian 55 1080 0x438 fo-FO Faroe Islands - Faroese 56 1081 0x439 hi-IN India - Hindi 57 1082 0x43a iv-MT Malta - Invariant Language (Invariant Country) 58 1083 0x43b iv-NO Norway - Invariant Language (Invariant Country) 59 1085 0x43d iv-001 World - Invariant Language (Invariant Country) 60 1086 0x43e ms-MY Malaysia - Malay 61 1087 0x43f kk-KZ Kazakhstan - Kazakh 62 1088 0x440 ky-KG Kyrgyzstan - Kyrgyz 63 1089 0x441 sw-KE Kenya - Kiswahili 64 1090 0x442 iv-TM Turkmenistan - Invariant Language (Invariant Country) 65 1091 0x443 uz-UZ Uzbekistan - Uzbek 66 1092 0x444 tt-RU Russia - Tatar 67 1093 0x445 iv-IN India - Invariant Language (Invariant Country) 68 1094 0x446 pa-IN India - Punjabi 69 1095 0x447 gu-IN India - Gujarati 70 1096 0x448 iv-IN India - Invariant Language (Invariant Country) 71 1097 0x449 ta-IN India - Tamil 72 1098 0x44a te-IN India - Telugu 73 1099 0x44b kn-IN India - Kannada 74 1100 0x44c iv-IN India - Invariant Language (Invariant Country) 75 1101 0x44d iv-IN India - Invariant Language (Invariant Country) 76 1102 0x44e mr-IN India - Marathi 77 1103 0x44f sa-IN India - Sanskrit 78 1104 0x450 mn-MN Mongolia - Mongolian 79 1105 0x451 iv-CN China - Invariant Language (Invariant Country) 80 1106 0x452 iv-GB United Kingdom - Invariant Language (Invariant Country) 81 1107 0x453 iv-KH Cambodia - Invariant Language (Invariant Country) 82 1108 0x454 iv-LA Laos - Invariant Language (Invariant Country) 83 1109 0x455 iv-MM Myanmar - Invariant Language (Invariant Country) 84 1110 0x456 gl-ES Spain - Galician 85 1111 0x457 kok-IN India - Konkani 86 1112 0x458 iv-IN India - Invariant Language (Invariant Country) 87 1113 0x459 iv-IN India - Invariant Language (Invariant Country) 88 1114 0x45a syr-SY Syria - Syriac 89 1115 0x45b iv-LK Sri Lanka - Invariant Language (Invariant Country) 90 1116 0x45c iv-US United States - Invariant Language (Invariant Country) 91 1117 0x45d iv-CA Canada - Invariant Language (Invariant Country) 92 1118 0x45e iv-ET Ethiopia - Invariant Language (Invariant Country) 93 1119 0x45f iv-MA Morocco - Invariant Language (Invariant Country) 94 1121 0x461 iv-NP Nepal - Invariant Language (Invariant Country) 95 1122 0x462 iv-NL Netherlands - Invariant Language (Invariant Country) 96 1123 0x463 iv-AF Afghanistan - Invariant Language (Invariant Country) 97 1124 0x464 iv-PH Philippines - Invariant Language (Invariant Country) 98 1125 0x465 dv-MV Maldives - Divehi 99 1126 0x466 iv-NG Nigeria - Invariant Language (Invariant Country) 100 1127 0x467 iv-NG Nigeria - Invariant Language (Invariant Country) 101 1128 0x468 iv-NG Nigeria - Invariant Language (Invariant Country) 102 1129 0x469 iv-NG Nigeria - Invariant Language (Invariant Country) 103 1130 0x46a iv-NG Nigeria - Invariant Language (Invariant Country) 104 1131 0x46b iv-BO Bolivia - Invariant Language (Invariant Country) 105 1132 0x46c iv-ZA South Africa - Invariant Language (Invariant Country) 106 1133 0x46d iv-RU Russia - Invariant Language (Invariant Country) 107 1134 0x46e iv-LU Luxembourg - Invariant Language (Invariant Country) 108 1135 0x46f iv-GL Greenland - Invariant Language (Invariant Country) 109 1136 0x470 iv-NG Nigeria - Invariant Language (Invariant Country) 110 1137 0x471 iv-NG Nigeria - Invariant Language (Invariant Country) 111 1138 0x472 iv-ET Ethiopia - Invariant Language (Invariant Country) 112 1139 0x473 iv-ET Ethiopia - Invariant Language (Invariant Country) 113 1140 0x474 iv-PY Paraguay - Invariant Language (Invariant Country) 114 1141 0x475 iv-US United States - Invariant Language (Invariant Country) 115 1142 0x476 iv-001 World - Invariant Language (Invariant Country) 116 1143 0x477 iv-SO Somalia - Invariant Language (Invariant Country) 117 1144 0x478 iv-CN China - Invariant Language (Invariant Country) 118 1145 0x479 iv-029 Caribbean - Invariant Language (Invariant Country) 119 1146 0x47a iv-CL Chile - Invariant Language (Invariant Country) 120 1148 0x47c iv-CA Canada - Invariant Language (Invariant Country) 121 1150 0x47e iv-FR France - Invariant Language (Invariant Country) 122 1152 0x480 iv-CN China - Invariant Language (Invariant Country) 123 1153 0x481 iv-NZ New Zealand - Invariant Language (Invariant Country) 124 1154 0x482 iv-FR France - Invariant Language (Invariant Country) 125 1155 0x483 iv-FR France - Invariant Language (Invariant Country) 126 1156 0x484 iv-FR France - Invariant Language (Invariant Country) 127 1157 0x485 iv-RU Russia - Invariant Language (Invariant Country) 128 1158 0x486 iv-GT Guatemala - Invariant Language (Invariant Country) 129 1159 0x487 iv-RW Rwanda - Invariant Language (Invariant Country) 130 1160 0x488 iv-SN Senegal - Invariant Language (Invariant Country) 131 1164 0x48c iv-AF Afghanistan - Invariant Language (Invariant Country) 132 1169 0x491 iv-GB United Kingdom - Invariant Language (Invariant Country) 133 1170 0x492 iv-IQ Iraq - Invariant Language (Invariant Country) 134 2049 0x801 ar-IQ Iraq - Arabic 135 2051 0x803 ca-ES Spain - Catalan (Catalan) 136 2052 0x804 zh-CN People's Republic of China - Chinese (Simplified) 137 2055 0x807 de-CH Switzerland - German 138 2057 0x809 en-GB United Kingdom - English 139 2058 0x80a es-MX Mexico - Spanish 140 2060 0x80c fr-BE Belgium - French 141 2064 0x810 it-CH Switzerland - Italian 142 2067 0x813 nl-BE Belgium - Dutch 143 2068 0x814 no-NO Norway - Norwegian 144 2070 0x816 pt-PT Portugal - Portuguese 145 2072 0x818 ro-MD Moldova - Romanian 146 2073 0x819 ru-MD Moldova - Russian 147 2074 0x81a sr-CS Serbia and Montenegro (Former) - Serbian 148 2077 0x81d sv-FI Finland - Swedish 149 2080 0x820 ur-IN India - Urdu 150 2092 0x82c az-AZ Azerbaijan - Azeri 151 2094 0x82e iv-DE Germany - Invariant Language (Invariant Country) 152 2098 0x832 iv-BW Botswana - Invariant Language (Invariant Country) 153 2107 0x83b iv-SE Sweden - Invariant Language (Invariant Country) 154 2108 0x83c iv-IE Ireland - Invariant Language (Invariant Country) 155 2110 0x83e ms-BN Brunei Darussalam - Malay 156 2115 0x843 uz-UZ Uzbekistan - Uzbek 157 2117 0x845 iv-BD Bangladesh - Invariant Language (Invariant Country) 158 2118 0x846 iv-PK Pakistan - Invariant Language (Invariant Country) 159 2121 0x849 ta-LK Sri Lanka - Tamil 160 2128 0x850 iv-CN China - Invariant Language (Invariant Country) 161 2137 0x859 iv-PK Pakistan - Invariant Language (Invariant Country) 162 2141 0x85d iv-CA Canada - Invariant Language (Invariant Country) 163 2143 0x85f iv-DZ Algeria - Invariant Language (Invariant Country) 164 2144 0x860 iv-IN India - Invariant Language (Invariant Country) 165 2145 0x861 iv-IN India - Invariant Language (Invariant Country) 166 2151 0x867 iv-SN Senegal - Invariant Language (Invariant Country) 167 2155 0x86b iv-EC Ecuador - Invariant Language (Invariant Country) 168 2163 0x873 iv-ER Eritrea - Invariant Language (Invariant Country) 169 3073 0xc01 ar-EG Egypt - Arabic 170 3076 0xc04 zh-HK Hong Kong S.A.R. - Chinese (Traditional) 171 3079 0xc07 de-AT Austria - German 172 3081 0xc09 en-AU Australia - English 173 3082 0xc0a es-ES Spain - Spanish 174 3084 0xc0c fr-CA Canada - French 175 3098 0xc1a sr-CS Serbia and Montenegro (Former) - Serbian 176 3131 0xc3b iv-FI Finland - Invariant Language (Invariant Country) 177 3152 0xc50 iv-MN Mongolia - Invariant Language (Invariant Country) 178 3153 0xc51 iv-BT Bhutan - Invariant Language (Invariant Country) 179 3179 0xc6b iv-PE Peru - Invariant Language (Invariant Country) 180 4097 0x1001 ar-LY Libya - Arabic 181 4100 0x1004 zh-SG Singapore - Chinese (Simplified) 182 4103 0x1007 de-LU Luxembourg - German 183 4105 0x1009 en-CA Canada - English 184 4106 0x100a es-GT Guatemala - Spanish 185 4108 0x100c fr-CH Switzerland - French 186 4122 0x101a hr-BA Bosnia and Herzegovina - Croatian 187 4155 0x103b iv-NO Norway - Invariant Language (Invariant Country) 188 4191 0x105f iv-MA Morocco - Invariant Language (Invariant Country) 189 5121 0x1401 ar-DZ Algeria - Arabic 190 5124 0x1404 zh-MO Macao S.A.R. - Chinese (Traditional) 191 5127 0x1407 de-LI Liechtenstein - German 192 5129 0x1409 en-NZ New Zealand - English 193 5130 0x140a es-CR Costa Rica - Spanish 194 5132 0x140c fr-LU Luxembourg - French 195 5146 0x141a iv-BA Bosnia and Herzegovina - Invariant Language (Invariant Country) 196 5179 0x143b iv-SE Sweden - Invariant Language (Invariant Country) 197 6145 0x1801 ar-MA Morocco - Arabic 198 6153 0x1809 en-IE Ireland - English 199 6154 0x180a es-PA Panama - Spanish 200 6156 0x180c fr-MC Principality of Monaco - French 201 6170 0x181a iv-BA Bosnia and Herzegovina - Invariant Language (Invariant Country) 202 6203 0x183b iv-NO Norway - Invariant Language (Invariant Country) 203 7169 0x1c01 ar-TN Tunisia - Arabic 204 7177 0x1c09 en-ZA South Africa - English 205 7178 0x1c0a es-DO Dominican Republic - Spanish 206 7180 0x1c0c fr-029 Caribbean - French 207 7194 0x1c1a iv-BA Bosnia and Herzegovina - Invariant Language (Invariant Country) 208 7227 0x1c3b iv-SE Sweden - Invariant Language (Invariant Country) 209 8193 0x2001 ar-OM Oman - Arabic 210 8201 0x2009 en-JM Jamaica - English 211 8202 0x200a es-VE Venezuela - Spanish 212 8204 0x200c fr-RE Reunion - French 213 8218 0x201a iv-BA Bosnia and Herzegovina - Invariant Language (Invariant Country) 214 8251 0x203b iv-FI Finland - Invariant Language (Invariant Country) 215 9217 0x2401 ar-YE Yemen - Arabic 216 9225 0x2409 en-029 Caribbean - English 217 9226 0x240a es-CO Colombia - Spanish 218 9228 0x240c fr-CD Congo (DRC) - French 219 9242 0x241a iv-RS Serbia - Invariant Language (Invariant Country) 220 9275 0x243b iv-FI Finland - Invariant Language (Invariant Country) 221 10241 0x2801 ar-SY Syria - Arabic 222 10249 0x2809 en-BZ Belize - English 223 10250 0x280a es-PE Peru - Spanish 224 10252 0x280c fr-SN Senegal - French 225 10266 0x281a iv-RS Serbia - Invariant Language (Invariant Country) 226 11265 0x2c01 ar-JO Jordan - Arabic 227 11273 0x2c09 en-TT Trinidad and Tobago - English 228 11274 0x2c0a es-AR Argentina - Spanish 229 11276 0x2c0c fr-CM Cameroon - French 230 11290 0x2c1a iv-ME Montenegro - Invariant Language (Invariant Country) 231 12289 0x3001 ar-LB Lebanon - Arabic 232 12297 0x3009 en-ZW Zimbabwe - English 233 12298 0x300a es-EC Ecuador - Spanish 234 12300 0x300c fr-CI Cote d’Ivoire - French 235 12314 0x301a iv-ME Montenegro - Invariant Language (Invariant Country) 236 13313 0x3401 ar-KW Kuwait - Arabic 237 13321 0x3409 en-PH Republic of the Philippines - English 238 13322 0x340a es-CL Chile - Spanish 239 13324 0x340c fr-ML Mali - French 240 14337 0x3801 ar-AE U.A.E. - Arabic 241 14345 0x3809 en-ID Indonesia - English 242 14346 0x380a es-UY Uruguay - Spanish 243 14348 0x380c fr-MA Morocco - French 244 15361 0x3c01 ar-BH Bahrain - Arabic 245 15369 0x3c09 en-HK Hong Kong SAR - English 246 15370 0x3c0a es-PY Paraguay - Spanish 247 15372 0x3c0c fr-HT Haiti - French 248 16385 0x4001 ar-QA Qatar - Arabic 249 16393 0x4009 en-IN India - English 250 16394 0x400a es-BO Bolivia - Spanish 251 17417 0x4409 en-MY Malaysia - English 252 17418 0x440a es-SV El Salvador - Spanish 253 18441 0x4809 en-SG Singapore - English 254 18442 0x480a es-HN Honduras - Spanish 255 19466 0x4c0a es-NI Nicaragua - Spanish 256 20490 0x500a es-PR Puerto Rico - Spanish 257 21514 0x540a es-US United States - Spanish 258 22538 0x580a es-419 Latin America - Spanish 259 23562 0x5c0a es-CU Cuba - Spanish </pre> <br /> 다음으로 알아볼 InstalledWin32Cultures는 문서에 다음과 같이 설명하고 있습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > Windows 운영 체제에 설치된 모든 문화권입니다. .NET Framework에서 지원하는 모든 문화권이 운영 체제에 설치되어 있는 것은 아닙니다. </pre> <br /> 그런데, 실제로 값을 구해보면 SpecificCultures 경우의 수에 NeutralCultures에 포함되어 있던 "127 0x7f iv Invariant Language (Invariant Country)" 항목을 추가해서 나오는 정도입니다. 즉, SpecificCultures의 출력 결과가 259개였고, LCID == 127 경우를 하나 더 포함하기 때문에 총 260가지의 항목이 구해집니다.<br /> <br /> 여기까지 이해했으면 AllCultures의 의미를 아는 것은 쉽습니다. CultureTypes 열거형이 Flags 특성을 가지고 있기 때문에 7의 값을 가진 AllCutures는 다음의 의미를 지닙니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > AllCutures == InstalledWin32Cultures | SpecificCultures | NeutralCultures </pre> <br /> 그래서 NeutralCultures == 69개 + SpecificCultures == 259개이므로 총 328개의 항목을 출력합니다.<br /> <br /> 이제 남은 항목이 CultureTypes.ReplacementCultures, CultureTypes.UserCustomCulture 2가지인데 모두 "사용자 지정 문화권"이라는 정도의 설명으로만 이번에는 만족하고 넘어가겠습니다. ^^<br /> <br /> <hr style='width: 50%' /><br /> <br /> SpecificCultures 관련해서 대체로 이 값들은 다음의 레지스트리를 통해 구해지는 것을 알 수 있습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Locale HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Language </pre> <br /> 가령 Language의 항목은 (제 시스템 기준) 263개의 항목이 등록되어 있습니다. 이 수는 SpecificCultures == 259개가 반환하는 값에 다음의 4가지 값이 더 들어간 것에 불과합니다.<br /> <br /> <ul> <li>Default</li> <li>InstallLanguage</li> <li>0x40a: {ES}</li> <li>0x1000: Customized cultures</li> </ul> <br /> 그리고 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CustomLocale" 키도 있는데 이 부분이 아마도 CultureTypes.UserCustomCulture로 반환하는 구역이 아닌가... 예상됩니다. ^^<br /> <br /> <hr style='width: 50%' /><br /> <br /> 위의 결과는 .NET 4.0으로 오면 달라지는 것이 있습니다. 각각의 항목 수를 보면,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > CultureTypes.AllCultures: 840 CultureTypes.FrameworkCultures: 203 CultureTypes.InstalledWin32Cultures: 428 CultureTypes.NeutralCultures: 279 CultureTypes.ReplacementCultures: 0 CultureTypes.SpecificCultures: 561 CultureTypes.UserCustomCulture: 0 CultureTypes.WindowsOnlyCultures: 0 </pre> <br /> SpecificCultures 수부터 561개인데, 이는 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Locale" 레지스트리보다 300여개가 많은 수를 포함합니다. 그것들을 어디서 가져오는지는 아직 잘 모르겠습니다. ^^<br /> <br /> 그래도 문서에 명시된 데로 AllCultures == SpecificCultures + NeutralCultures + (InstalledWin32Cultures)라는 점에는 변함이 없습니다.<br /> </p><br /> <br /><hr /><span style='color: Maroon'>[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]</span> </div>
첨부파일
스팸 방지용 인증 번호
2016
(왼쪽의 숫자를 입력해야 합니다.)