나는 Vb.net에서 영어 단어로 날짜를 변환하고 싶습니다.
예 : 2008 년 5 월 26 일 ~ 26 일 2008 년 5 월날짜를 단어로 변환하는 방법은 무엇입니까?
날짜/시간 데이터 형식의 함수가 있습니까?
나는 Vb.net에서 영어 단어로 날짜를 변환하고 싶습니다.
예 : 2008 년 5 월 26 일 ~ 26 일 2008 년 5 월날짜를 단어로 변환하는 방법은 무엇입니까?
날짜/시간 데이터 형식의 함수가 있습니까?
이 아마 가장 좋은 방법을 : -
private static string[] dayText = new string[]
{"First", "Second", "Third", "Fourth", "Fifth", "Sixth", "Seventh", "Eighth",
"Nineth", "Tenth", "Eleventh", "Twelveth", "Thirteenth", "Fourteenth", "Fifteenth",
"Sixteenth", "Seventeenth", "Eighteenth", "Nineteenth", "Twentieth", "Twenty first",
"Twenty second", "Twenty third", "Twenty fourth", "Twenty fifth", "Twenty sixth",
"Twenty seventh", "Twenty eighth", "Twenty nineth", "Thirtieth", "Thirty first"};
public static string DayInWords(int day)
{
//assertion code here
return dayText[day-1];
}
...
string result = DayInWords(myDate.Day) + myDate.ToString(" MMM yyyy");
나는 내장 함수를 모른다. 그러나 고려해야 할 것은 31 일뿐입니다. 1에서 31을 수동으로 단어로 대체 한 함수를 만드는 것은 쉽습니다. 다음과 같이 월과 올해 추가 :
Function foobar(ByVal mydate As Date) As String
Dim result As String = ""
Select Case mydate.Day
Case 1
result = "First"
Case 2
result = "Second"
Case 3
result = "Third"
... etc ...
Case 31
result = "Thirty-First"
End Select
Return result & " " & mydate.ToString("MMMM yyyy")
End Function
실제로 그들이 아마 가장 쉬운 soultion이다 하드 코딩 가능한 숫자의 작은 금액을 제공. 당신이 그렇게하고 싶지 않아하지만, 이러한 리소스에 대해 살펴 :
http://xl.barasch.com/cCo11432.htm
http://www.vb-helper.com/howto_net_number_to_words2.html