Do While Not EOF(1) Input(1, Username) Input(1, Userpass) Input(1, Usertype) If Username = DataUtilisateur.Text Then MessageBox.Show("User Pareil") If Userpass = DataPass.Text Then MessageBox.Show("Passe Pareil") FileClose(1) Nascar.Show() Nascar.ActiveForm.Focus() Me.Close() Exit Sub End If End If Loop FileClose(1) MessageBox.Show("Connection Impossible. Vérifiez vos informations !")
Function FichierMaitreTete(FileName As String) As Boolean 'on vérife que le fichier existe If File.Exists(FileName) Then Dim lesLignes As String() = File.ReadAllLines(FileName) If lesLignes(0) = "Pseudo" && lesLignes(1) = "Mot de passe" Return True End If End If Return False End Function
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionis si je peux faire en sorte que mon code sois 2016 plutôt que 2000et ben non, même si .Net est la dernière technologie de Microsoft, ça date quand même de 2001 (2 ans après l'abandon de VB6).
file.readalllines [....] cette commande lit la ligne 0 et 1 puis les compare avec les entré dans les textbox puis si'il n'est pas pareil, lit les 2 lignes suivantes et les recompare etc.... ?
Marc
TR78
2
Function FichierMaitreTete(FileName As String) As Boolean 'on vérife que le fichier existe If File.Exists(FileName) Then Dim lesLignes As String() = File.ReadAllLines(FileName) For index = 0 To lesLignes.Count() Step 3 'puisque y'a une troisième ligne dans ton exemple If lesLignes(index) = "Pseudo" && lesLignes(index+1) = "Mot de passe" Return True End If Next End If Return False End Function
Dim lesLignes() As String = File.ReadAllLines(FileName) Dim loginAvecIndex = lesLignes.Select(Function(login, index) New With {Key login, Key index}).Where(Function(item) item.login = "Pseudo") 'retourne tous les lignes (avec leur index initial) qui correspondent au pseudo, normalement il ne devrait en avoir qu'une, mais on ne sait jamais. Dim lesMotsDePassesCorrespondentIls As IEnumerable(Of Boolean) = loginAvecIndex.Select(Function(item) lesLignes(item.index + 1) = "Mot de passe") 'retourne la collection des tests de correspondance avec le mot de passe Return lesMotsDePassesCorrespondentIls.Any(Function(ouiOuNon) ouiOuNon = True) 'retourne s'il existe au moins un test réussi
Function FichierMaitreTete(FileName As String) As Boolean
'on vérife que le fichier existe
If File.Exists(FileName) Then
' Assigne la valleur "LesLignes" au fichier texte complet
Dim lesLignes As String() = File.ReadAllLines(FileName)
'Indique de lire les ligne 1 et 2 et sauter la troisième ligne
For index = 0 To lesLignes.Count() Step 3
'Si la valleur LesLignes (ligne1) est égale a "Pseudo" et LesLignes (ligne2) est égale au password
If lesLignes(index) = "Pseudo" && lesLignes(index+1) = "Mot de passe"
' On retourne True
Return True
'Fin du SI (Comparaison des données)
End If
'Recommencer et lire les 3 lire suivantes pour comparaison
Next
'Fin di SI (SI le fichier existe)
End If
'retourne False si on a pas trouver d'utilisateur
Return False
End Function
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
User = TextBox1.Text
Pass = TextBox2.Text
TextBox3.Text = Login("D:\Nascar 2017\Nascar 2017\System\User\Login.nasd")
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
End Sub
End Class
Module Module1
Public User As String
Public Pass As String
Public index As Integer
Public TypeC As Integer
Function Login(Filelog As String) As Boolean
If System.IO.File.Exists(Filelog) Then
index = 0
Dim lesLignes As String() = System.IO.File.ReadAllLines(Filelog)
For index = 0 To lesLignes.Count() Step 3
If lesLignes(index) = User And lesLignes(index + 1) = Pass Then
Return True
End If
If lesLignes.Count() = index + 3 Then
Return False
End If
Next
End If
Return False
End Function
End Module
If lesLignes.Count() = index + 3 Then
Return False
End If
(for int index =0; index < lesLignes.Count();index += 3)
For index = 0 to lesLignes.Count() -1 Step 3
For index = 0 To lesLignes.Count() - 1 Step 3