webForumDet fria alternativet

Parsa datum?

3 svar · 364 visningar · startad av Travoni

TravoniMedlem sedan okt. 20041 556 inlägg
#1

Finns det ingen smidigare metod att plocka ut ett datum ifrån ex. 20060908T093000Z än denna?

    private DateTime parseDate(string strDate)
{
 return ((DateTime)(string.Format("{0}-{1}-{2} {3}:{4}:00", Left(strDate, 4), Mid(strDate, 5, 2), Mid(strDate, 7, 2), Mid(strDate, 10, 2), Mid(strDate, 12, 2))));
}
GladhMedlem sedan maj 20012 812 inlägg
#2

Du har ju metoden DateTime.Parse() och DateTime.ParseExact() kan inte de hjälpa dig.

- M

TravoniMedlem sedan okt. 20041 556 inlägg
#3

Jag skulle kunna göra så här:

DateTime.ParseExact("20060618T092030Z", "yyyyMMddTHHmmssZ", New System.Globalization.CultureInfo("sv-SE", True))

Men kruxet är att Z i slutet inte alltid finns med då får jag formatexeption.

GladhMedlem sedan maj 20012 812 inlägg
#4

Så fall får du väl kolla hur många tecken som finns i tid och välja rätt formatpattern.


string tid = "20060618T092030Z"; 
string patternZ = "yyyyMMddTHHmmssZ"
string patternWithOutZ = "yyyyMMddTHHmmss"

DateTime.ParseExact(tid, (tid.Length == 16 ? patternZ : patternWithOutZ), New System.Globalization.CultureInfo("sv-SE", True))

- M

131 ms totalt · 3 externa anrop · v20260731065814-full.beb2e261
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)