Buongiorno a tutti. Sono un principiante che ha iniziato a studiare e ha installato Visual Basic 2010 express.
Il mio primo obiettivo è un'applicazione dove apro un file di testo che contiene N righe ciascuna delle quali ha questo formato:
gg/mm/aaaa n1 n2 n3 n4 n5 n6 n7
ossia 10 caratteri iniziali per la data e poi 7 numeri interi separati da uno spazio.
Per fare questo ho scritto questo codice:
=========================================
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim FILE_NAME As String = "C:\Users\Home\Desktop\DELTA\Elenco.txt"
Dim TextLine As String
Dim Dataestra(10000) As String
Dim Contalinee As Integer
Contalinee = 0
TextLine = ""
If System.IO.File.Exists(FILE_NAME) = True Then ' se il file con quel nome esiste allora ...
Dim objReader As New System.IO.StreamReader(FILE_NAME)
Do While objReader.Peek() <> -1 ' legge sino alla fine del file
Contalinee = Contalinee + 1 ' conta le righe del file
TextLine = TextLine & objReader.ReadLine() & vbNewLine
' estraggo dalla stringa TextLine la sotto-stringa di 10 caratteri della data
Dataestra(Contalinee) = TextLine.Substring(0, 10)
Loop
Beep()
TextBox1.Text = "L'archivio contiene " & Contalinee & " estrazioni"
MsgBox(Dataestra(Contalinee))
Else ' altrimenti se non esiste il file con quel nome
Beep()
TextBox1.Text = "File di archivio non trovato"
End If
Button1.Visible = False 'rende invisibile il bottone "Apri l'archivio"
End Sub
=========================================
... ma mi sono arenato già alla data, nel senso che il tutto funziona nel senso che mi conta correttamente il numero di linee presente nel file e me lo scrive nel TextBox, ma nel MsgBox(Dataestra(Contalinee)) mi fa vedere sempre e solo la data della prima linea.
Dove sbaglio?
Come faccio poi a convertire le sottostrinche in interi per avere i miei 7 numeri dopo la data?
Grazie per l'attenzione,
Exagonal