Laden...

String in DateTime

Erstellt von tObi84 vor 18 Jahren Letzter Beitrag vor 18 Jahren 3.230 Views
T
tObi84 Themenstarter:in
120 Beiträge seit 2005
vor 18 Jahren
String in DateTime

Hallo zusammen,

ich lese aus einer Datenbank den String "30.06.2005 15:28:87". Dieser String soll in ein DateTime geparst werden, doch die DateTime.Parse-Methode meint, dass sie daraus kein Datum entziffern kann.

if(DateTime.Parse(tr.Cells[12].Text.ToString()).ToUniversalTime() > DateTime.Now.ToUniversalTime().Subtract(TS))
{
     Table.Rows.Add(tr);
}

Kann mir jemand sagen, wie ich allgemeint einen String zu einem DateTime bekomme?

N
4.644 Beiträge seit 2004
vor 18 Jahren

Weil es keine 87 Sekunden in einer Minute gibt.

T
tObi84 Themenstarter:in
120 Beiträge seit 2005
vor 18 Jahren

ach shit ... das is nur ein tipfehler ... 57 sekunden stehn da schon drin ... sorry

N
4.644 Beiträge seit 2004
vor 18 Jahren

Dann geht es auch.

308 Beiträge seit 2005
vor 18 Jahren

Du solltest bei Datumskonvertierungen den passenden IFormatprovider für das gegebene Format übergeben (anscheinend deutsches Datumsformat).


using System.Globalization
....
IFormatProvider culture = new CultureInfo("de-DE", true);
DateTime.Parse(tr.Cells[12].Text.ToString(),culture);

T
tObi84 Themenstarter:in
120 Beiträge seit 2005
vor 18 Jahren

Ja Noodl ... du wirst sicher Recht haben ... es geht natürlich auch ... kopp schüttel ?(
danke cadi ... der tip hat mir geholfen ... hatte die cultureinfo zwar auch shcon probiert, aber statt "de-DE" nur "de" dastehen ...

N
4.644 Beiträge seit 2004
vor 18 Jahren

Original von tObi84
Ja Noodl ... du wirst sicher Recht haben ... es geht natürlich auch ... kopp schüttel ?

Was willst damit sagen? Natürlich funktioniert es.

string s = "30.06.2005 15:28:57";
DateTime dt = DateTime.Parse(s);
MessageBox.Show(dt.ToString());
O
98 Beiträge seit 2005
vor 18 Jahren

Original von Noodles

Original von tObi84
Ja Noodl ... du wirst sicher Recht haben ... es geht natürlich auch ... kopp schüttel ?

Was willst damit sagen? Natürlich funktioniert es.

string s = "30.06.2005 15:28:57";  
DateTime dt = DateTime.Parse(s);  
MessageBox.Show(dt.ToString());  

Aber nur wenn du die Cultur-Eigenschaft von Thread auf z.B. Deutsch eingestellt hast. versuch es mal mit Englisch dann ist dein Satz...

Orginal von Noodles
Dann geht es auch.

...total für nen Ar***!

N
4.644 Beiträge seit 2004
vor 18 Jahren

Original von Online
Aber nur wenn du die Cultur-Eigenschaft von Thread auf z.B. Deutsch eingestellt hast. versuch es mal mit Englisch dann ist dein Satz...

Ich bin von deutsch ausgegangen, wie sich jeder ... vielleicht auch hätte denken können.

T
tObi84 Themenstarter:in
120 Beiträge seit 2005
vor 18 Jahren

genau da liegt der unterschied ... bei mir ist nicht deutsch eingestellt ... und wenn ich sage dass es nicht funktioniert, dann wird es wohl bei mir auch nicht funktionieren ... naja ... wie auch immer ...

it works!

N
4.644 Beiträge seit 2004
vor 18 Jahren

Original von tObi84
genau da liegt der unterschied ... bei mir ist nicht deutsch eingestellt ... und wenn ich sage dass es nicht funktioniert, dann wird es wohl bei mir auch nicht funktionieren ... naja ... wie auch immer ...

it works!

Was Du vorher nicht erwähnt hast. Weiterhin war es mir ja auch leider nicht möglich von Anfang an zu wissen, dass die 87 ein Tipfehler war, mein Fehler eben.

T
tObi84 Themenstarter:in
120 Beiträge seit 2005
vor 18 Jahren

Dass ich mich mit der 87 vertipt hab tut mir ja leid, aber auf Grund der Tatsache, dass ich geschrieben habe, dass es bei mir nicht funktioniert, solltest du vielleicht schlussfolgern können, dass es einen Unterschied in unseren Einstellungen gibt ... und nicht unqualifiziert hinschreiben, dass es funktioniert ...

Naja ist ja jetz auch Pups-egal ... das Problem ist gelöst.
Danke 🙂

2.921 Beiträge seit 2005
vor 18 Jahren

also wenn es nur darum geht aus datetime einen string zu machen ist:

Datetime mydatetime = new datetime(...);

string sDate = mydatetime.toString();

die einfachste Lösung....

Seit der Erkenntnis, dass der Mensch eine Nachricht ist, erweist sich seine körperliche Existenzform als überflüssig.

2.921 Beiträge seit 2005
vor 18 Jahren

Convert.ToDateTime(und hier rein was auch immer reinsoll)

Seit der Erkenntnis, dass der Mensch eine Nachricht ist, erweist sich seine körperliche Existenzform als überflüssig.

O
98 Beiträge seit 2005
vor 18 Jahren

Original von dr4g0n76
Convert.ToDateTime(und hier rein was auch immer reinsoll)

Und wie unterscheidet sich das jetzt zudem was wir geschrieben haben?