문자열 형식을 사용하여 매우 간단
의 위에 .ToSTring("") :
23:12에서 11:12 Pm으로 변환하는 예 :
DateTime d = new DateTime(1, 1, 1, 23, 12, 0);
var res = d.ToString("hh:mm tt"); // this show 11:12 Pm
var res2 = d.ToString("HH:mm"); // this show 23:12
Console.WriteLine(res);
Console.WriteLine(res2);
Console.Read();
다른 언어를 사용하는 다른 언어로 창에서 실행되는 동일한 코드가 동일한 언어로 다른 결과를 생성하기 때문에 다른 문화에 관심이있는 것은 아닙니다.
아랍어 언어 문화로 설정된 창문의 예는 다음과 같습니다.
// 23:12시
م는 저녁 (مساء의 첫 번째 문자)을 의미합니다.
다른 시스템 문화권에서는 windows 지역 및 언어 옵션에 설정된 내용에 따라 // 23:12 du가 표시됩니다.
Windows 제어판에서 Windows 지역 및 언어-> 현재 형식 (콤보 상자)의 다른 형식으로 변경하고 변경 ... 응용 프로그램을 다시 작성 (실행)하고 iam에 대해 이야기하는 것을 볼 수 있습니다.
> 현재 시스템의 문화가 영어로 설정되어 있지 않은 경우 영어 이벤트에서 Am 및 Pm 단어를 강제로 표시 할 수있는 사람은 누구입니까?
두 줄을 추가하여 쉽게 :->
첫 번째 단계 using System.Globalization;
는 코드 위에 추가
이전 코드를 다음과 같이 수정하십시오.
DateTime d = new DateTime(1, 1, 1, 23, 12, 0);
var res = d.ToString("HH:mm tt", CultureInfo.InvariantCulture); // this show 11:12 Pm
InvariantCulture => 기본 영어 형식을 사용합니다.
또 다른 질문 나는 영어 (또는 다른 언어) 지역 형식으로 설정된 창을 사용하더라도 오후를 아랍어 또는 특정 언어로 사용하고 싶습니다.
아랍어 예를위한 Soution :
DateTime d = new DateTime(1, 1, 1, 23, 12, 0);
var res = d.ToString("HH:mm tt", CultureInfo.CreateSpecificCulture("ar-AE"));
// 23:12시
시스템이 영어 지역 형식으로 설정된 경우 이벤트. 다른 언어 형식으로 원하면 "ar-AE"를 변경할 수 있습니다. 각 언어의 목록과 형식이 있습니다.
예 :
ar ar-SA Arabic
ar-BH ar-BH Arabic (Bahrain)
ar-DZ ar-DZ Arabic (Algeria)
ar-EG ar-EG Arabic (Egypt)
big list...
다른 질문이 있으면 알려주세요.
DateTime
이 있습니다. msdn.microsoft.com/en-us/library/8kb3ddd4.aspx