1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177
| Imports System.IO
Imports System.Text.RegularExpressions
Public Class Form1
Const PATHFICHIER As String = "save.txt"
Dim compteur_insertion As Integer = 0
Structure Personne
Dim Matricule As String
Dim Identifiant As String
Dim Nom As String
Dim Prenom As String
Dim Telephone As String
Dim Mail As String
End Structure
Dim StructPersonne(1000) As Personne
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
While File.ReadAllLines(PATHFICHIER) = vbCrLf
MsgBox("Coucou", 4097, "coucou")
End While
End Sub
Private Sub BT_ECRIRE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BT_ECRIRE.Click
Me.LBL_ERR.Visible = False
Me.LBL_ERR_MATRICULE.Visible = False
Me.LBL_ERR_NOM.Visible = False
Me.LBL_ERR_PRENOM.Visible = False
Me.LBL_ERR_MAIL.Visible = False
If Verification() And Verif_Matricule() And Verif_Nom() And Verif_Prenom() And Verif_Mail() Then
StructPersonne(compteur_insertion).Matricule = TXT_MATRICULE.Text
StructPersonne(compteur_insertion).Identifiant = TXT_IDENTIFIANT.Text
StructPersonne(compteur_insertion).Nom = TXT_NOM.Text
StructPersonne(compteur_insertion).Prenom = TXT_PRENOM.Text
StructPersonne(compteur_insertion).Telephone = TXT_TEL.Text
StructPersonne(compteur_insertion).Mail = TXT_MAIL.Text
'On vide les textbox
Me.TXT_MATRICULE.Text = ""
Me.TXT_IDENTIFIANT.Text = ""
Me.TXT_NOM.Text = ""
Me.TXT_PRENOM.Text = ""
Me.TXT_TEL.Text = ""
Me.TXT_MAIL.Text = ""
compteur_insertion += 1
Else
If Not Verification() Then
Me.LBL_ERR.Visible = True
End If
If Not Verif_Matricule() Then
Me.LBL_ERR_MATRICULE.Visible = True
End If
If Not Verif_Nom() Then
Me.LBL_ERR_NOM.Visible = True
End If
If Not Verif_Prenom() Then
Me.LBL_ERR_PRENOM.Visible = True
End If
If Not Verif_Mail() Then
Me.LBL_ERR_MAIL.Visible = True
End If
End If
End Sub
''' <summary>
''' Fonction qui vérifie que tout les champs sont bien rempli
''' </summary>
''' <returns>return un boolean true si tout les champs sont rempli et False si au moins un champs est vide</returns>
''' <remarks></remarks>
Function Verification() As Boolean
Dim Bon As Boolean = True
If Me.TXT_MATRICULE.Text = "" Then
Bon = False
End If
If Me.TXT_IDENTIFIANT.Text = "" Then
Bon = False
End If
If Me.TXT_NOM.Text = "" Then
Bon = False
End If
If Me.TXT_PRENOM.Text = "" Then
Bon = False
End If
If Me.TXT_TEL.Text = "" Then
Bon = False
End If
If Me.TXT_MAIL.Text = "" Then
Bon = False
End If
Return Bon
End Function
''' <summary>
''' Fonction qui vérifie le format du numéro de téléphone
''' </summary>
''' <returns>Return False si numéro pas conforme au format choisi</returns>
''' <remarks></remarks>
Function Verif_Matricule() As Boolean
Dim pattern As String = "^\d{4}$"
Dim Bon As Boolean = True
If Regex.IsMatch(TXT_MATRICULE.Text, pattern) Then
Bon = True
Else
Bon = False
End If
Return Bon
End Function
''' <summary>
''' Fonction qui vérifie le format du Nom
''' </summary>
''' <returns>Return False si le nom n'est pas composé de lettre uniquement (maj ou min)</returns>
''' <remarks></remarks>
Function Verif_Nom() As Boolean
Dim pattern As String = "^[a-zA-Z ]{2,}$"
Dim Bon As Boolean = True
If Regex.IsMatch(TXT_NOM.Text, pattern) Then
Bon = True
Else
Bon = False
End If
Return Bon
End Function
''' <summary>
''' Fonction qui vérifie le format du Prenom
''' </summary>
''' <returns>Return False si le Prenom n'est pas composé de lettre uniquement (maj ou min)</returns>
''' <remarks></remarks>
Function Verif_Prenom() As Boolean
Dim pattern As String = "^[a-zA-Z]{2,}$"
Dim Bon As Boolean = True
If Regex.IsMatch(TXT_PRENOM.Text, pattern) Then
Bon = True
Else
Bon = False
End If
Return Bon
End Function
''' <summary>
''' Fonction qui vérifie le format de l'adresse mail
''' </summary>
''' <returns>Return False si l'adresse mail n'est pas correcte</returns>
''' <remarks></remarks>
Function Verif_Mail() As Boolean
Dim pattern As String = "^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$"
Dim Bon As Boolean = True
If Regex.IsMatch(TXT_MAIL.Text, pattern) Then
Bon = True
Else
Bon = False
End If
Return Bon
End Function
Private Sub Form1_closing(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closing
'On écrit
Dim compteur_ecriture As Integer
For compteur_ecriture = 0 To compteur_insertion - 1
File.AppendAllText(PATHFICHIER, Me.StructPersonne(compteur_ecriture).Matricule)
File.AppendAllText(PATHFICHIER, ";")
File.AppendAllText(PATHFICHIER, Me.StructPersonne(compteur_ecriture).Identifiant)
File.AppendAllText(PATHFICHIER, ";")
File.AppendAllText(PATHFICHIER, Me.StructPersonne(compteur_ecriture).Nom)
File.AppendAllText(PATHFICHIER, ";")
File.AppendAllText(PATHFICHIER, Me.StructPersonne(compteur_ecriture).Prenom)
File.AppendAllText(PATHFICHIER, ";")
File.AppendAllText(PATHFICHIER, Me.StructPersonne(compteur_ecriture).Telephone)
File.AppendAllText(PATHFICHIER, ";")
File.AppendAllText(PATHFICHIER, Me.StructPersonne(compteur_ecriture).Mail)
File.AppendAllText(PATHFICHIER, ";")
File.AppendAllText(PATHFICHIER, vbCrLf)
Next
End Sub
End Class |
Partager