코드를 사용하지 않고 날짜를 형식화하는 방법 - 문자열 형식 질문

StackOverflow https://stackoverflow.com/questions/405140

  •  03-07-2019
  •  | 
  •  

문제

형식 문자열로 다음을 어떻게 달성 할 수 있습니까? 01.01.2009? 모든 언어로 작동해야합니다 (예는 독일의 경우). 따라서 주중 짧은 날과 짧은 날짜 만 있어야합니다.

나는 'ddd d'( '없이'시도했다. 그러나 이것은 'do 01'로 이어집니다. 'D'앞에 놓을 수있는 캐릭터가있을 수 있습니까?

도움이 되었습니까?

해결책

DateTime.Now.ToString("ddd dd/MM/yyyy")

다른 팁

당신은 그것을 사용해야합니다 ISO 8601 표준 구어가 다양한 언어로 청중을 대상으로하는 경우 표준.

DateTime.Now.ToString("ddd yyyy-MM-dd");

또는 짧은 날짜로 현재 문화를 대상으로 할 수 있습니다.

DateTime.Now.ToString("d", Thread.CurrentThread.CurrentCulture);

또는 긴 데이트 :

DateTime.Now.ToString("D", Thread.CurrentThread.CurrentCulture);

로케일 특정 짧은 날짜와 로케일의 날 이름을 얻으려면 두 개의 전화를 사용해야하므로 다음과 같습니다.

 myDate.ToString("ddd ") + myDate.ToString("d");

대신 긴 날짜 형식을 사용하는 것을 고려해 보셨습니까?

현지화하려면 ( "모든 언어"라고 말했기 때문에 그렇게 가정) CultureInfo를 사용하여 표시하려는 다양한 문화를 설정할 수 있습니다. MSDN 라이브러리에는 정보가 있습니다 표준 날짜 및 시간 형식 문자열 그리고 CultureInfo 클래스.

MSDN이 제공하는 예제 :

// Display using pt-BR culture's short date format
DateTime thisDate = new DateTime(2008, 3, 15);
CultureInfo culture = new CultureInfo("pt-BR");      
Console.WriteLine(thisDate.ToString("d", culture));  // Displays 15/3/2008

참고로, Java에서는 다음과 같습니다.

DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
Date date = new Date();
String formattedDate = dateFormat.format(date);

동일한 문자가 분리기로 사용되도록하려면 Backslash를 사용하여 문자를 피해야합니다. 그렇지 않으면 문자가있는 로케일에 기본값이됩니다. 질문에 지정된 형식을 원하는 경우이 문자열을 사용하는 것이 좋습니다.

DateTime.Now.ToString("ddd dd.MM.yyyy");

대신 전방 슬래시를 사용하려면 항상 슬래시로 출력되도록 탈출해야합니다.

DateTime.Now.ToString("ddd dd\\/MM\\/yyyy");
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top