Bonsoir à tous,
Je fais appel à vous suite à un problème que je rencontre et qui me perturbe.
Voilà, je lis un fichier score.txt qui contient (Nom du joueur, nombre de partie, minute, seconde) :
Pour lire les valeurs, je le fais avec StreamReader, donc je récupère le tout normalement avec la suite d'instructions habituelle spliter par rapport au ";" récupéré dans le tableau nommé "ligne".AAA,999,10,00;
AAB,998,00,04;
AAC,997,00,06;
AAD,996,00,10;
AAE,995,10,12;
Ensuite je fais un split par rapport au "," de ligne, récupéré dans le tableau "result".
Avec le code suivant,
Pour un passage en fonction de (0,3), je devrais trouver "ok" pour toutes les lignes, soit 5 fois.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Public Sub hight_score(ByVal minute, ByVal seconde) Dim Score As String = "./Ressources/Score.txt" Dim sr As New System.IO.StreamReader(Score) Dim Source As String Dim result() As String Dim i As Integer Source = sr.ReadToEnd() Dim ligne() As String = Split(Source, ";") For i = 0 To 4 result = Split(ligne(i), ",") Dim mm As Integer = CType(result(2), Integer) Dim ss As Integer = CType(result(3), Integer) MsgBox(mm & "'" & ss & "'' et " & minute & "'" & seconde & "''") If minute <= mm Then If seconde <= ss Then MsgBox("ok") End If End If Next End Sub
Or avec le 10'00 et le 10'12, le programme ne m'affiche pas le "ok".
Je ne comprends pas pourquoi, je teste bien deux integer, et non des string avec des integer ou encore deux string.
Je voudrais vérifier si le temps que je passe en paramètre est inférieur à un des temps du fichier.
Quelqu'un aurait une réponse/solution à mon problème ?
Nir3x
Partager