Konvertieren von Zeichenfolgen an bestimmten DateTime-format
Ich ve wurde googeln für eine Weile jetzt und für das Leben von mir kann nicht scheinen, um eine Lösung zu finden. Ich dachte, das wäre einfach, aber es zu lange dauert und bin Hinwendung zu stackoverflow.
Ich brauche, um zu konvertieren eine Zeichenfolge, die enthält ein Datum und eine Uhrzeit in einen DateTime-variable. Ich habe die formatierte Zeichenfolge in der genaue format, das ich will, um es zu speichern, aber wenn ich es konvertieren in einen DateTime-es hält auch das hinzufügen der Sekunden ein, die ich nicht will. Ich will es so gespeichert, wie Sie am 01.01.2010 09:00 UHR. Hier der code, ich habe mit so weit:
DateTime.ParseExact(startTime,"MM/dd/yyyy hh:mmtt", null);
..aber es hält Anhängen Sekunden. Bitte beraten.
InformationsquelleAutor Joseph Stein | 2010-07-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn es gespeichert ist als DateTime-Datentyp, es ist gespeichert richtig, aber die Benutzeroberfläche ist anzeigen es falsch. Der DateTime-Datentyp hat stets die Sekunden (Millisekunden, usw.), unabhängig davon, wie Sie den Wert. Das problem ist, wie es angezeigt wird, zurück an den Benutzer.
Müssen Sie, um das Datum anzuzeigen, die Sie möchten in den richtigen format-string zum Zeitpunkt der Anzeige, wie in
Bearbeiten - Hinzugefügt
Formatieren Sie es in einem GridView, siehe hier:
http://peterkellner.net/2006/05/24/how-to-set-a-date-format-in-gridview-using-aspnet-20using-htmlencode-property/
Siehe mein edit... Man kann nicht ändern, wie die Datenbank (oder .Net-runtime, etc) gespeichert, die einem bestimmten Datentyp. Wie Yogi Berra würde sagen, wenn er ein Programmierer, der Datentyp ist, was es ist, und enthält die Felder, die es enthält. Ein datetime-Datentyp wird der Sekunden, unabhängig davon, wie Sie es einsetzen. Es ist wirklich nur eine Frage, wie es angezeigt wird, zurück zu Ihnen.
Es sei denn, natürlich, Sie definieren Ihre eigenen Daten zu geben...
Ich verstehe, was du meinst. Das problem ist, ich bin dieser Ausgabe in einem gridview und bin nicht sicher, wie Sie Sie zu manipulieren, die Daten ausgegeben. Verwende ich ein gridview Ereignis und manipulieren es in der codebehind?
Sie könnten Fragen, eine andere Frage dann: "Wie kann ich angeben, der Datum/Uhrzeit-format angezeigt, in einer raster-Ansicht?".
InformationsquelleAutor David
Ich denke, wenn Sie sagen, es ist das hinzufügen von Sekunden, du meinst, wenn Sie versuchen, es zu Lesen, es liest die Sekunden als gut, Sie wollen etwas tun, wie
DateTime-Klasse immer hat, Sekunden und Millisekunden und Nanosekunden ich glaube, dass in ihm gespeichert sind. Immer, Ob Sie Sie zu füllen oder nicht, es meint die, obwohl Sie nur zu formatieren, wie Sie Lesen die Informationen aus dem DateTime-Objekt zu machen, es nicht geben Ihnen die Stücke der DateTime-Daten, die Sie nicht ausfüllen oder nicht verwenden.
Wenn Sie die Speicherung in einer Datenbank, zu verstehen, wird die Datenbank auch speichern Sie alle diese Informationen, unabhängig davon, ob oder nicht Sie geben es zu. Es gibt einige verschiedene SQL-DateTime-Typen wie SmallDate und etc, die für die Speicherung von unterschiedlichen Mengen von DateTime-Daten, weiß nicht, ob es gibt eine, die speichert, um die Stunden und nicht in Sekunden, aber mit SQL kann man auch formatieren, wie Sie wählen Sie die Daten aus, oder wählen Sie Sie einfach aus in Ihrem C# - C# DateTime-Objekt, und dann, wenn Sie vertreten es wieder, formatieren Sie die ToString() so, dass es nicht die Daten, die Sie nicht wollen/haben.
InformationsquelleAutor Jimmy Hoffa
Versuchen.
InformationsquelleAutor Andy Evans
Wenn Sie eine Zeichenfolge, müssen Sie zunächst die Garantie dafür, dass es in der Tat umgewandelt werden in ein datetime.
So den ersten, so zu tun. Sobald Sie einen datetime-Wert, speichern Sie in einer Datenbank so wie Sie ist, brauchen Sie nicht zu sein copncerned über format, (wie andere schon hier gesagt).
dann, wenn Sie müssen, formatieren Sie es zu einer unterschiedlichen Darstellung nur, wenn Sie angezeigt werden müssen Sie irgendwo..
//usw...
InformationsquelleAutor Charles Bretana
Hier ist ein Beispiel dafür.
InformationsquelleAutor Jayesh Sorathia