Questo topic e' stato chiuso dal moderatore.
27/10/21 20:49
Giacos71
Salve sto cercando di venirne a capo da solo ma ci sto sbattendo la testa, dovrei scaricare l'archivio estrazioni del lotto e caricarlo in un DataSet cosa penso di aver fatto, poi elaborare riga per riga, e ogni riga splittarla con la funzione Split() cosa che ho fatto e riempire i vari campi.
La struttura è cosi composta Data,Ruota,Estratto1, Estratto2, ecc: "2021/09/18 BA 19 82 17 54 76" e così per tutte le righe per tutto il file.
Riesco a leggere il file e ha splittare una singola riga (come di esempio nella variabile str) ma probabilmente qualcosa manca, visto che dovrei passargli l'intero archivio. Qui di seguito il codice finora buttato giù, sicuramente qualcosa manca, tutte righe commentate le ho messe così per capire dove stavo sbagliando.
Ho messo anche un datagridview per avere un riscontro visivo come stavo procedendo. Da tenere conto che non metto mani al codice da almeno 10 anni, qualsiasi consiglio/suggerimento è ben accetto!
La seconda questione e se tenere il dataset e lavorare da li o creare un database per l'elaborazione modifica dei dati, ma questa è un'altra questione.
La struttura è cosi composta Data,Ruota,Estratto1, Estratto2, ecc: "2021/09/18 BA 19 82 17 54 76" e così per tutte le righe per tutto il file.
Riesco a leggere il file e ha splittare una singola riga (come di esempio nella variabile str) ma probabilmente qualcosa manca, visto che dovrei passargli l'intero archivio. Qui di seguito il codice finora buttato giù, sicuramente qualcosa manca, tutte righe commentate le ho messe così per capire dove stavo sbagliando.
Ho messo anche un datagridview per avere un riscontro visivo come stavo procedendo. Da tenere conto che non metto mani al codice da almeno 10 anni, qualsiasi consiglio/suggerimento è ben accetto!
'Nuovo DataTable Estrazioni Dim Archivio As DataTable = New DataTable("Estrazioni") 'Crea la Chiave Primaria ID Dim ID_PK As DataColumn = Archivio.Columns.Add("ID", GetType(Int32)) ID_PK.AllowDBNull = False ID_PK.Unique = True 'Crea le colonne appropriate Archivio.Columns.Add("Data", GetType(Date)) Archivio.Columns.Add("Ruota", GetType(String)) Archivio.Columns.Add("Estratto1", GetType(Double)) Archivio.Columns.Add("Estratto2", GetType(Double)) Archivio.Columns.Add("Estratto3", GetType(Double)) Archivio.Columns.Add("Estratto4", GetType(Double)) Archivio.Columns.Add("Estratto5", GetType(Double)) ' Carica il file storico.txt della Lottomatica e legge tutte le righe Try ' La variabile RecordArchivioTXT conterrà tutte le ' righe lette dal file C:\MyFile.Txt file. Dim RecordArchivioTXT As String = "" ' Il file da leggere è C:\storico71-00_B.txt Dim FileName As String = "C:\storico71-00_B.txt" ' Controllo se il file esiste. If System.IO.File.Exists(FileName) = True Then ' Carico il file nell'oggetto StreamReader. Dim StreamReader As New System.IO.StreamReader(FileName) ' Metto tutte le righe del file ' nella variabile RecordArchivioTXT. RecordArchivioTXT = StreamReader.ReadToEnd ' Mostro le righe del file. MessageBox.Show("" & RecordArchivioTXT) ' Chiudo l'oggetto StreamReader. StreamReader.Close() End If Catch ex As Exception ' Mostro l'errore se la sub genera un errore. MessageBox.Show("Error message: " & ex.Message) End Try 'Crea un nuova riga nella variabile Archivio DataTable Dim RecordArchivio As DataRow = Archivio.NewRow() ''Routine divisione Riga Archivio in parti 'Dim str As String 'Dim strArr() As String 'Dim count As Integer 'str = "1971/01/02 NA 41 34 62 47 71" 'strArr = str.Split() 'For count = 0 To strArr.Length - 1 ' MessageBox.Show(strArr(count)) 'Next 'Routine divisione Riga Archivio in parti Dim str As String Dim strArr() As String Dim count As Integer str = "1971/01/02 NA 41 34 62 47 71" strArr = str.Split() For count = 0 To strArr.Length - 1 MessageBox.Show(strArr(count)) Next 'Ciclo inserimento valori dati fittizzi For i As Integer = 1 To 5 'RecordArchivio = Archivio.NewRow() 'RecordArchivio(0) = i 'RecordArchivio(1) = Date.Today 'RecordArchivio(2) = strArr(2).ToString '"BA " & i.ToString() 'RecordArchivio(3) = strArr(3).ToString '19 '& i '.ToString() 'RecordArchivio(4) = strArr(4).ToString '82 '& i '.ToString() 'RecordArchivio(5) = strArr(5).ToString '17 '& i '.ToString() 'RecordArchivio(6) = strArr(6).ToString '54 '& i '.ToString() 'RecordArchivio(7) = strArr(7).ToString '76 '& i '.ToString() Archivio.Rows.Add(RecordArchivio) Next 'Mostra i dati del DataTable in DataGridView1 DataGridView1.DataSource = Archivio
La seconda questione e se tenere il dataset e lavorare da li o creare un database per l'elaborazione modifica dei dati, ma questa è un'altra questione.
Ultima modifica effettuata da Giacos71 27/10/21 20:51
aaa