Формат для времени - PullRequest
       1

Формат для времени

3 голосов
/ 10 января 2012

Мне нужно отформатировать время следующим образом 00h30m .

Есть ли простой способ сделать это, что мне не хватает?

Ответы [ 4 ]

6 голосов
/ 10 января 2012

Вы можете попробовать это

.ToString("HH\\hmm\\m");

Обратите внимание, что вам нужно экранировать буквы h и m с двумя обратными слешами, иначе вы получите ошибку компилятора.

5 голосов
/ 10 января 2012

Описание

Вы должны использовать DateTime.ToString () для этого.Это будет работать для вашего.

Sample

DateTime.Now.ToString(@"hh\hmm\m");

Конечно, замените DateTime.Now вашей переменной DateTime.

Обновление

Я не знаю, нужен ли вам формат 12 или 24 часа.Если вы хотите 12, используйте строчные буквы hh, а если хотите 24, используйте прописные буквы HH.

. Это не сработает")

  • приведет к Unrecognized escape sequence, поэтому он не будет компилироваться

Дополнительная информация

4 голосов
/ 10 января 2012

Мне нравится подход @ Брэндона (и проголосовал за него). Альтернативный подход будет использовать String.Format.

String.Format("{0}h{1}m", DateTime.Now.Hour, DateTime.Now.Minute);

Вы можете инкапсулировать любой подход в методе расширения, если вы действительно этого хотите.

public static class DateTimeExtensions
{
    public static string CustomFormat(this DateTime dt)
    {
        // Could use @Brandon's approach or whatever else here.
        return String.Format("{0}h{1}m", dt.Hour, dt.Minute);
    }
}

...

// Usage:
DateTime.Now.CustomFormat();
1 голос
/ 10 января 2012

Будет ли DateTime.ToString("hh\hmm\m") работать на вас?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...