Sonntag, Dezember 15, 2019

Wie man ein Datum Feld von MM/dd/yyyy yyyy/MM/dd im vb.net

Ich brauche, um ein Datum-Feld aus MM/dd/yyyy yyyy/MM/dd im vb.net aber sollte es noch ein Feld „Datum“ danach so, dass ich es zuordnen kann gegen ein Datum in einer Datenbank.

Im moment alles, was ich Schaffe, zu tun, ist zu ändern, um eine Zeichenkette in diesem format.

Habe ich versucht, diese Art von code, die auch nicht funktioniert.

 DateTime.Parse(yourDataAsAString).ToString("yyyy-MM-dd")
 fromDeString = String.Format("{0:yyyy/MM/dd}", aDate)
 fromDate = Format("{0:yyyy/MM/dd}", aDate)

Jede Hilfe wäre sehr apreciated, Dank

  • Siehe diese Frage.
  • Was meinst du mit “ hat nicht funktioniert? Was ist „aDate“?
  • Ich bin immer noch mit dem Datum im string-format, die bewirkt, dass eine data type mismatch“, wenn ich eine select-Anweisung.
  • aDate ist nur aDate ist ein Datumsfeld mit dem format MM-dd,yyyy
  • ich meine, MM/dd/yyyy
InformationsquelleAutor Domitius | 2009-05-22

3 Kommentare

  1. 1

    Du bist nicht zu verstehen, dass ein date-Objekt nicht speichern Sie die Ziffern in einem bestimmten format. Der einzige Weg, um die Ziffern formatiert, in der Reihenfolge, die Sie wollen, ist, um es in einen string konvertieren. Warum brauchen Sie, um Sie zu vergleichen, die in einem bestimmten format? Ein Datum ist ein Datum, egal, wie es formatiert ist. 12/15/78 == 1978/12/15.

    Wenn Sie nicht in der Lage zu vergleichen, die Daten aus der DB gegen ein date-Objekt in VB, ist es wahrscheinlich, dass das Datum, an dem Sie im Vergleich zu den in der Datenbank zurückgegeben wird, um Sie im string-format, in diesem Fall sollten Sie verdeckte es zu einem date-Objekt für den Vergleich.

    Dim sDate As String = "2009/12/15" 'Get the date from the database and store it as a string
    Dim dDate As New Date(2009, 12, 15) 'Your date object, set to whatever date you want to compare against
    
    Select Case Date.Compare(dDate, Date.Parse(sDate))
       Case 0
          'The dates are equal
       Case Is > 0
          'The date in the database is less
       Case Is < 0
          'The date in the database is greater
    End Select
  2. 0

    Hier ein Beispiel für einen Modul-Nachweis der Funktionalität, die Sie wünschen.

    Imports System.Globalization
    Module Module1
        Sub Main()
            Dim culture As New CultureInfo("en-us", True)
            Dim mmDDyy As String = "10/23/2009"
            Dim realDate As Date = Date.ParseExact(mmDDyy, "mm/dd/yyyy", culture)
            Dim yyMMdd As String = realDate.ToString("yyyy/MM/dd")
        End Sub
    
    End Module

    Hoffe, das hilft.

    Freundlichen GRÜßEN
    Noel

    • Ich brauche JJMMTT werden „Dim JJMMTT Datum“ in dem format angegeben, nicht einen String. aber trotzdem danke
    • Sie fehlen den Punkt Domitius. Die realDate-variable ist das Datum, als Datum. JJMMTT ist nur eine string-Darstellung. Ändern realDate
  3. 0

    Ihre zweite sollte eigentlich funktionieren. Stattdessen versuchen Sie einfach:

    dim chislo as date = date.now dim message As String = $"   
                 Today`s Date: {String.Format("{0:dddd, dd/MM/yyyy}", Chislo)} "  
                         MsgBox(message)

Kostenlose Online-Tests

Ihre Entwicklerrolle