Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CONVERTION DE DATE J/M/AAAA EN AAAAMMJJ ET HEURE H:M EN HHMM


Information sur la source

Description

Pratique pour utiliser de l'information date et heure entre Page Web et DataBase. Sans avoir de problème de convertion de paramètre Régionaux qui sont toujours problèmatique.
 

Source

  • Public Function DateDBToPage(ByVal pDate As String) As String
  • ' Composition d'une date de base de donnée style AAAAMMJJ vers JJ/MM/AAAA
  • If pDate.Length = 8 Then
  • Return Mid(pDate, 7, 2) + "/" + Mid(pDate, 5, 2) + "/" + Mid(pDate, 1, 4)
  • Else
  • Return ""
  • End If
  • End Function
  • Public Function HeureDBToPage(ByVal pHeure As String) As String
  • ' Composition d'une Heure de base de donnée style HHMM vers HH:MM
  • If pHeure.Length = 4 Then
  • Return Mid(pHeure, 1, 2) + ":" + Mid(pHeure, 3, 2)
  • Else
  • Return ""
  • End If
  • End Function
  • ' -------------------------------------------------------------------------------
  • Public Function DatePageToDb(ByVal pDate As String) As String
  • ' -------------------------------------------------------------------------------
  • ' Composition d'une date JJ/MM/AAAA pour une base de donnée style AAAAMMJJ
  • If pDate.Length >= 8 Then
  • Dim x1 As Integer = pDate.IndexOf("/") + 1 ' Récup position du premier "/"
  • Dim x2 As Integer = pDate.IndexOf("/", x1 + 1) + 1 ' Récup position du deuxième "/"
  • Dim aaaa, mm, jj As String
  • aaaa = Mid(pDate, x2 + 1, pDate.Length - x2)
  • If aaaa.Length = 2 Then aaaa = "20" + aaaa ' On vérifie si une date sur 2 position on complète avec 20xx
  • aaaa = aaaa.PadLeft(4, "0")
  • mm = Mid(pDate, x1 + 1, x2 - x1 - 1).PadLeft(2, "0")
  • jj = Mid(pDate, 1, x1 - 1).PadLeft(2, "0")
  • Return aaaa + mm + jj
  • Else
  • Return ""
  • End If
  • End Function
  • ' -------------------------------------------------------------------------------
  • Public Function HeurePageToDb(ByVal pHeure As String) As String
  • ' -------------------------------------------------------------------------------
  • ' Composition d'une heure HH:MM pour une base de donnée style HHMM
  • If pHeure.Length >= 3 Then
  • Dim x1 As Integer = pHeure.IndexOf(":") + 1 ' Récup position du ":"
  • Dim x2 As Integer = pHeure.Length
  • Dim hh, mm As String
  • If x1 < 0 Then
  • ' Il n'y à pas de ':' dans l'heure on la justifie comme ca sur 4 positions
  • hh = Format(Int(pHeure), "0000")
  • Return hh
  • Else
  • mm = Mid(pHeure, x1 + 1, x2 - x1).PadLeft(2, "0")
  • hh = Mid(pHeure, 1, x1 - 1).PadLeft(2, "0")
  • End If
  • Return hh + mm
  • Else
  • Return "0000"
  • End If
  • End Function
    Public Function DateDBToPage(ByVal pDate As String) As String
        ' Composition d'une date de base de donnée style AAAAMMJJ vers JJ/MM/AAAA
        If pDate.Length = 8 Then
            Return Mid(pDate, 7, 2) + "/" + Mid(pDate, 5, 2) + "/" + Mid(pDate, 1, 4)
        Else
            Return ""
        End If
    End Function

    Public Function HeureDBToPage(ByVal pHeure As String) As String
        ' Composition d'une Heure de base de donnée style HHMM vers HH:MM
        If pHeure.Length = 4 Then
            Return Mid(pHeure, 1, 2) + ":" + Mid(pHeure, 3, 2)
        Else
            Return ""
        End If
    End Function


    ' -------------------------------------------------------------------------------
    Public Function DatePageToDb(ByVal pDate As String) As String
        ' -------------------------------------------------------------------------------
        ' Composition d'une date JJ/MM/AAAA pour une base de donnée style AAAAMMJJ
        If pDate.Length >= 8 Then
            Dim x1 As Integer = pDate.IndexOf("/") + 1 ' Récup position du premier "/"
            Dim x2 As Integer = pDate.IndexOf("/", x1 + 1) + 1 ' Récup position du deuxième "/"
            Dim aaaa, mm, jj As String

            aaaa = Mid(pDate, x2 + 1, pDate.Length - x2)
            If aaaa.Length = 2 Then aaaa = "20" + aaaa ' On vérifie si une date sur 2 position on complète avec 20xx
            aaaa = aaaa.PadLeft(4, "0")
            mm = Mid(pDate, x1 + 1, x2 - x1 - 1).PadLeft(2, "0")
            jj = Mid(pDate, 1, x1 - 1).PadLeft(2, "0")

            Return aaaa + mm + jj
        Else
            Return ""
        End If

    End Function

    ' -------------------------------------------------------------------------------
    Public Function HeurePageToDb(ByVal pHeure As String) As String
        ' -------------------------------------------------------------------------------
        ' Composition d'une heure HH:MM pour une base de donnée style HHMM
        If pHeure.Length >= 3 Then
            Dim x1 As Integer = pHeure.IndexOf(":") + 1 ' Récup position du  ":"
            Dim x2 As Integer = pHeure.Length
            Dim hh, mm As String

            If x1 < 0 Then
                ' Il n'y à pas de ':' dans l'heure on la justifie comme ca sur 4 positions
                hh = Format(Int(pHeure), "0000")
                Return hh
            Else
                mm = Mid(pHeure, x1 + 1, x2 - x1).PadLeft(2, "0")
                hh = Mid(pHeure, 1, x1 - 1).PadLeft(2, "0")
            End If

            Return hh + mm
        Else
            Return "0000"
        End If
    End Function

Commentaires et avis

signaler à un administrateur
Commentaire de davidauche le 12/04/2004 14:36:04

salut, c'est bien, mais pas de fonction Format dans vb.net????, ou une chose comme ça? qui reduire ces lines de codes...
merci a+

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,234 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.