Функция форматирования даты в .NET - PullRequest
4 голосов
/ 03 апреля 2010

Есть ли встроенная функция форматирования даты .NET для возврата даты в формате:

3 апреля 2010

Это бит "rd", который я не могу вспомнить, есть ли опция форматирования.

Ура, Роб.

Ответы [ 3 ]

4 голосов
/ 03 апреля 2010

Не думайте, что есть встроенный способ. Но довольно легко скопировать / вставить один из сообщения в блоге :

Protected Function FormatPostedTimeWithDayNumberSuffix(Optional ByVal format As String = "MMMM d{0}, yyyy") As String
    Dim dateTime As DateTime = Date.Parse(Entry.PostedTime)
    If Not Null.IsNull(dateTime) Then
        Dim formatTime As String = dateTime.ToString(format)

        Dim day As Integer = dateTime.Day
        Dim dayFormat As String = String.Empty
        Select Case day
            Case 1, 21, 31
                dayFormat = "st"
            Case 2, 22
                dayFormat = "nd"
            Case 3, 23
                dayFormat = "rd"
            Case Else
                dayFormat = "th"
        End Select

        Return String.Format(formatTime, dayFormat)
    End If

    Return Entry.PostedTime
End Function
0 голосов
/ 04 апреля 2010

Спасибо всем - я подозревал, что столько, но никогда не хорошая идея полагаться на память Для этого требования нет встроенной функции / функции форматирования, поэтому вам нужно выполнить свою собственную.

Ура, Роб.

0 голосов
/ 03 апреля 2010

Боюсь, ты должен сделать это сам. В C # это будет что-то вроде этого:

if (dt.Day == 1) strdate = dt.ToString("dd") + "st";
else if (dt.Day == 2) strdate = dt.ToString("dd") + "nd";
else if (dt.Day == 3) strdate = dt.ToString("dd") + "rd";
else if (dt.Day == 21) strdate = dt.ToString("dd") + "st";
else if (dt.Day == 22) strdate = dt.ToString("dd") + "nd";
else if (dt.Day == 23) strdate = dt.ToString("dd") + "rd";
else if (dt.Day == 31) strdate = dt.ToString("dd") + "st";
else strdate = dt.ToString("dd") + "th";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...