DateTime에서 시간? 24 시간 형식


157

이 DateTime이 있습니까? 내가하고 싶은 일은 시간을 얻지 만 24 시간 형식으로 표시하는 것입니다.
예를 들면 다음과 같습니다.
, 시간이 오후 2:20:23이면 14:20으로 변환하고 싶습니다.

Visual C #으로 작업하고 있습니다. 어떤 아이디어라도 감사합니다.

나는 이와 같은 것을 가지고있다

public static string FormatearHoraA24(DateTime? fechaHora)
{
    if (!fechaHora.HasValue)
        return "";

    string retornar = "";
    //here goes what i need
}

@OrelEraki 당신은 진지합니까? 이 질문은 그 전에 2 년 전에 게시되었습니다. 중복을 호출하기 전에 사실을 확인하십시오.
Archibald

종료 할 필요가 없습니다. 2014 년이었습니다. 제거했습니다.
Orel Eraki

4
소문자 "hh"는 오전 / 오후 표기, "HH"는 24 시간 표기
Antoine Meltzheim

답변:


275

아래 코드를 사용하여 원하는 결과를 얻을 수 있습니다. 2'H ' HH는 24 시간 형식입니다.

return fechaHora.Value.ToString("HH:mm");

8
이것이 작동하는 이유에 대한 설명. 12 시간 동안 hh로 24 시간 동안 HH와 같은 형식.
Luke Alderton

139
date.ToString("HH:mm:ss"); // for 24hr format
date.ToString("hh:mm:ss"); // for 12hr format, it shows AM/PM

DateTime의 다른 포맷터에 대해서는 링크를 참조하십시오 .


19

ToString("HH:mm")확실하게 사용 하면 원하는 것을 문자열 로 얻을 수 있습니다. .

현재 시간 / 분을 숫자 로 사용하려면 문자열 조작이 필요하지 않습니다. 당신은 TimeOfDay속성을 사용할 수 있습니다 :

TimeSpan timeOfDay = fechaHora.TimeOfDay;
int hour = timeOfDay.Hours;
int minute = timeOfDay.Minutes;

계산을 위해 정수 값을 제공하기 때문에이 방법이 마음에 듭니다.
Hao Nguyen

하루 중 시간부터 int가 필요했기 때문에 이것이 나에게 선호되는 솔루션이었습니다. DateTime으로 다시 구문 분석하기 위해 문자열로 변환하는 것이 훨씬 쉽습니다.
Sev

6

이 시도:

//String.Format("{0:HH:mm}", dt);  // where dt is a DateTime variable

public static string FormatearHoraA24(DateTime? fechaHora)
{
    if (!fechaHora.HasValue)
        return "";

    return retornar = String.Format("{0:HH:mm}", (DateTime)fechaHora);
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.