Час от 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 ты серьезно? Этот вопрос был опубликован до этого один на два года. По крайней мере, проверьте свои факты, прежде чем называть дубликат.
— Арчибальд

Нет необходимости выходить из программы, это было в 2014 году. Удалено.
— Орёл Эраки

4
«hh» в нижнем регистре для обозначения am / pm, «HH» для обозначения 24h
— Antoine Meltzheim

Ответы:


275

Вы можете получить желаемый результат с помощью кода ниже. Two'H 'в HH24-часовом формате.

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

8
Описание того, почему это работает, было бы полезно. Например, ЧЧ для 24-часового формата, а ЧЧ для 12-часового.
— Люк Олдертон


19

Использование, ToString("HH:mm")безусловно, дает вам то, что вы хотите в качестве строки .

Если вы хотите текущий час / минуту в виде чисел , манипуляции со строками не нужны; Вы можете использовать TimeOfDayсвойство:

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

Мне нравится этот метод, потому что он дает мне целочисленные значения для расчета.
— Хао Нгуен

Это было предпочтительным решением для меня, потому что мне просто нужно было 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);
}
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.