+ Rispondi al messaggio
Pagina 1 di 3 123 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22

Creazione e gestione archivio gioco del lotto

  1. #1
    L'avatar di Giacos71
    Giacos71 non è in linea Novello
    Salve, innanzi tutto grazie per tutto l’aiuto che potrete darmi.
    Veniamo al succo del problema, dovrei scaricare l’archivio delle estrazioni per il gioco del lotto in formato zip, decomprimerlo e poi utilizzare l’archivio in formato txt.

    Al momento ho fatto delle prove utilizzando questi 2 metodi:

    LEGGERE RIGA X RIGA
            Try
                ' La variabile Row conterrà le righe
                ' lette dal file di testo
                Dim Row As String = ""
                ' Il file da leggere è C:\MyFile.Txt
                Dim FileName As String = "C:\storico71-00_B.Txt"
                ' Se il file esiste allora leggo il file..
                If System.IO.File.Exists(FileName) = True Then
                    ' Carico il file nell'oggetto StreamReader.
                    Dim StreamReader As New System.IO.StreamReader(FileName)
                    ' Ciclo sull'oggetto StreamReader
                    ' fino alla fine del file.
                    While StreamReader.EndOfStream = False
                        ' La variabile Row contiene la riga letta dal file.
                        Row = StreamReader.ReadLine
                        ' Mostro la riga letta.
                        MessageBox.Show("Riga: " + Row)
                    End While
                    ' Chiudo l'oggetto StreamReader.
                    StreamReader.Close()
                End If
            Catch ex As Exception
                ' Mostro il messaggio di errore se la sub genera un errore.
                MessageBox.Show("Error message: " & ex.Message)
            End Try
    
    'LEGGERE TUTTO IL TESTO
            Try
                ' La variabile AllRows conterrà tutte le
                ' righe lette dal file C:\MyFile.Txt file.
                Dim AllRows As String = ""
                ' Il file da leggere è C:\MyFile.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 AllRows.
                    AllRows = StreamReader.ReadToEnd
                    ' Mostro le righe del file.
                    MessageBox.Show("" + AllRows)
                    ' 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
    
        End Sub
    

    L’archivio e così composto: 1971/01/02 NA 41 34 62 47 71 e tutte le varie ruote, la data purtroppo è ripetuta più volte.

    Sicuramente c’è molti modi per ottenere ciò che voglio e che spiego meglio qui ora:
    praticamente dovrei prendere una riga alla volta, splittare le varie parti (questo ancora mi manca) e salvare i vari dati: Data estrazione (nel nostro formato gg/mm/aaaa), Ruota, Estratto1,Estratto2, ecc.

    La data purtroppo è ripetuta x ogni Ruota, quindi 10 righe o meno con ruota ed estratti diversi ma stessa data. Non capisco perché non abbiano creato una sola riga con data e 50 estratti, sicuramente si potrà fare ma sicuramente il codice diverrà più complesso.

    Una volta fatto ciò vorrei un consiglio secondo la vostra esperienza se è meglio caricare i dati su un Dataset oppure creare (soluzione a cui avevo pensato) un file XML.

    Chiedo un vostro aiuto e/o consiglio su come procedere, è ben accetto codice ma anche solo il modo di procedere con pseudo codice e consigli sarebbe perfetto, mica voglio la pappa pronta. Dopo parecchio tempo ho deciso di riprendere una mia grande passione per la programmazione.
    Un grazie in anticipo.

  2. #2
    L'avatar di sistemista
    sistemista non è in linea Topo di biblioteca
    Ti dico la mia,poi decidi tu.
    Anni indietro ho usato l'archivio scaricato dalla lottomatica in formato testo e poi attraverso access con la procedura guidata ho inserito i dati con inserimento delle virgole per separare i campo,ora,a distanza di anni non ricordo bene come feci ma comunque riuscii a creare una tabella con tutte le estrazioni,ruote e data delle estrazioni.
    ℹ️ Leggi di più su sistemista ...

  3. #3
    L'avatar di Brontolo
    Brontolo non è in linea Very Important Person
    Ovviamente la lettura in un colpo solo (ReadToEnd) è più efficiente della lettura una riga alla volta (ReadLine).
    Lo split dei numeri è banale in quanto esiste una funzione apposita.
    Riguardo alla scelta su come e dove memorizzarli, questo dipende dall'uso che vuoi farne; in genere una tabella di database è più versatile.
    ... un consiglio secondo la vostra esperienza...
    Ecco, su questo non credo che qui troverai molti appassionati dell'argomento
    ℹ️ Leggi di più su Brontolo ...

  4. #4
    Infatti... sul lotto qui non trovi tanti adepti.

    Ma parlando in generale, hai sicuramente bisogno di un database
    ℹ️ Leggi di più su AntonioG ...

  5. #5
    L'avatar di Giacos71
    Giacos71 non è in linea Novello
    Grazie per le prime risposte. Ovviamente anche se gli adepti sono pochi a me interssava la logica di funzionamento anche applicato ad altri contesti che poi io adatterò. Ok una tabella di database sarebbe più logica, difatti tempo fa si trovava una versione in formato mdb dell'archivio ma da quanto ho capito mi dovrei scaricare io l'archivio in formato txt e convetirlo in formato mdb e popolarlo di volta in volta con i nuovi dati giusto? La data ripetuta è un casino o magari èpiù semplice di quello che sembra?

  6. #6
    L'avatar di sistemista
    sistemista non è in linea Topo di biblioteca
    Inizia a fare delle prove,provaci.
    Scarica l'archivio e poi crei il database access.
    ℹ️ Leggi di più su sistemista ...

  7. #7
    L'avatar di Giacos71
    Giacos71 non è in linea Novello
    Quote Originariamente inviato da sistemista Visualizza il messaggio
    Inizia a fare delle prove,provaci.
    Scarica l'archivio e poi crei il database access.
    Ok o solo bisogno di un aiutino (o consiglio/pseudo codice), no codice voglio arrivarci da solo.

    Ogni singola riga è così composta: Data,Ruota,Ba1,Ba2ecc.
    Io vorrei: Data,Ruota,Estratti da (1 a 55) cioè tutti gli estratti (10 ruote) su unica riga, 11 se contiamo anche la ruota Nazionale.

    Solo che le estrazioni sono così composte:

    2021/09/18 BA 19 82 17 54 76
    2021/09/18 CA 7 27 63 75 62
    2021/09/18 FI 4 76 11 34 66
    2021/09/18 GE 45 79 12 19 83
    2021/09/18 MI 85 40 2 52 36
    2021/09/18 NA 22 82 43 55 4
    2021/09/18 PA 45 44 31 90 21
    2021/09/18 RM 2 16 62 49 36
    2021/09/18 RN 52 76 20 25 31
    2021/09/18 TO 11 16 38 88 9
    2021/09/18 VE 56 88 52 29 6

    Quindi credo ci siano 2 controlli da fare: uno se la data è uguale accoda allo stesso record e visto che partenzo dall'inizio dell'archivio le ruote non c'erano tutte riempire il record con "00" oppure lasciare vuoto.

    Sono sulla strada giusta? Ora comincio a buttare giù un pò di codice!

  8. #8
    Prima di tutto devi impostare il tuo database. Devi pensare a quante e quali tabelle ti servono e quali campi utilizzare in tali tabelle. Poi devi pensare alle relazioni tra queste, tenendo a mente anche quello che vorrai ottenere da questo database (ovvero quali risultati vorrai ottenere dalla varie query).

    Ad esempio (prima del codice), pensa ad una

    tabella "Estrazioni" con ID, Data

    ...
    ℹ️ Leggi di più su AntonioG ...

  9. #9
    L'avatar di Giacos71
    Giacos71 non è in linea Novello
    Ok grazie. Ma quindi mi consigli una tabella solo con ID,Data o anche con tutti gli estratti?

    Aprimo avviso credo che avrei bisogno di una sola tabella estrazioni, ma mai si può dire.

    I controlli che dovrei fare estrazioni con assenza di ruote se parto dal 1939, e il fatto che le date siano ripetute 11 volte , però così a me non piace preferirei su unica riga, credo che la soluzione a ciò risieda nelle query, come spiegato a sistemista più sopra.

  10. #10
    Stiamo parlando di struttura del DB, le L'unica riga di cui parli a che si riferisce?

    Il DB deve essere normalizzato.

    Un esempio di partenza (da discutere) potrebbe essere

    Estrazioni
    ID, Data

    Ruote
    ID, Nome

    Numeri
    ID, IDEstrazione, IDRuota, Ordine, Numero
    ℹ️ Leggi di più su AntonioG ...

+ Rispondi al messaggio
Pagina 1 di 3 123 ultimoultimo

Potrebbero interessarti anche ...

  1. Estrarre dall'archivio e salvare in un altro archivio.
    Da Martin Landau nel forum Microsoft Access
    Risposte: 7
    Ultimo Post: 26-07-2012, 09:22
  2. Collaborazione: Excel creazione archivio dati e grafici
    Da fragovic nel forum Offerte di lavoro
    Risposte: 0
    Ultimo Post: 03-06-2012, 13:27
  3. Excel creazione archivio dati e grafici
    Da fragovic nel forum Microsoft Excel
    Risposte: 3
    Ultimo Post: 03-06-2012, 12:59
  4. Tabella Lotto
    Da david_werewolf nel forum Visual Basic .Net
    Risposte: 5
    Ultimo Post: 28-01-2009, 20:02
  5. Creazione archivio video
    Da Cis nel forum Visual Basic 6
    Risposte: 16
    Ultimo Post: 28-03-2006, 07:50