반응형
C# 언어 지역화 예제
- 한국어, 영어 리소스 파일을 생성하여 테스트
Properties - 새 항목 추가 - 리소스 파일
- 한국어 리소스 파일 : StringLib.resx
- 영어 리소스 파일 : StringLib.en-US.resx
- 리소스 파일 이름 형식 : (원본 리소스 파일 이름).(지역코드).resx
리소스 파일에 데이터 저장
StringLib.resx
str1 | 다국어 테스트 한국어 1 |
str2 | 다국어 한국어 2 |
StringLib.en-US.resx
str1 | Language English 1 |
str2 | English 2 |
다국어 가져오기 메서드
//기본값은 한국어로 하며, 설정파일(ini) 등에서 값을 가져와 저장하여 사용
public static String sLanguage = "ko";
public static String getString(String name) {
return getString(sLanguage, name);
}
public static String getString(String code, String name) {
if(code.Equals("en")) {
Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
return Properties.StringLib.ResourceManager.GetString(name);
} else {
Thread.CurrentThread.CurrentUICulture = new CultureInfo("ko-KR");
return Properties.StringLib.ResourceManager.GetString(name);
}
}
사용
String str1 = String.Format("str1 : ko[{0}], en[{1}]", Common.getString("str1"), Common.getString("en", "str1"));
String str2 = String.Format("str2 : ko[{0}], en[{1}]", Common.getString("str2"), Common.getString("en", "str2"));
String msg = str1 + "\n\n" + str2;
MessageBox.Show(msg);
반응형
'윈폼(Winform)' 카테고리의 다른 글
C# DataTable DataRow 데이터 가져오기 (1) | 2021.11.18 |
---|---|
C# DataBase(Mysql, Maria) 접속, Select/Execute Query (0) | 2021.11.18 |
C# Round Border Label (0) | 2021.11.17 |
C# Crystal Report 예제(편집, 인쇄) (1) | 2021.11.17 |
C# 실행파일에 폰트 포함 (1) | 2021.11.14 |
최근댓글