Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] File Di Record??
Forum - C# / VB.NET - [VB.NET] File Di Record??

Avatar
ciaosimo (Normal User)
Newbie


Messaggi: 3
Iscritto: 28/12/2010

Segnala al moderatore
Postato alle 17:45
Martedì, 28/12/2010
Ciao a tutti! Sono un nuovo membro del Forum, che seguo ormai da parecchi anni.

Mi rivolgo a voi dopo che non ho ricevuto risposte sufficienti nè dal mio stesso prof di informatica, nè da altre fonti.

Quello che Vi chiedo è di COMMENTARE questo programma, basato sui ARRAY/FILE di RECORD e spiegarmi con pazienza COSA FA. Sono Disperato!

GRAZIE A TUTTI IN ANTICIPO!!!

-PROGRAMMA PRINCIPALE:


Codice sorgente - presumibilmente VB.NET

  1. Public Class FormRecord
  2.  
  3.     Private Sub CmdCarica_Click (...)
  4.         Dim TempLibro As Libro
  5.         If nRec <= 1000 Then
  6.             TempLibro.Codice = Convert.ToInt32(TxtCodice.Text)
  7.             TempLibro.Titolo = TxtTitolo.Text
  8.             Biblioteca(nRec) = TempLibro
  9.             nRec += 1
  10.             MsgBox("Caricato")
  11.         Else
  12.             MsgBox("Dato non Corretto")
  13.         End If
  14.     End Sub
  15.  
  16.     Private Sub Form1_Load(...)
  17.         LeggiFile()
  18.     End Sub
  19.  
  20.     Private Sub CmdSalva_Click(...)
  21.         SalvaFile()
  22.     End Sub
  23.  
  24. End Class
  25.  
  26. -MODULO (il più importante!!!)
  27.  
  28.  
  29. Public Module Funzioni
  30.  
  31.     Public Structure Libro
  32.         Public Codice As Integer
  33.         <VBFixedString(50)> Public Titolo As String
  34.     End Structure
  35.  
  36.     Public Biblioteca(1000) As Libro
  37.     Public nRec As Integer
  38.  
  39.     Public Function LeggiFile() As Boolean
  40.         Dim Temp As Libro
  41.         Dim i As Integer
  42.         FileOpen(1, "Biblio.DAT", OpenMode.Random, , , Len(Temp))
  43.         nRec = LOF(1) / Len(Temp)
  44.         For i = 1 To nRec
  45.             FileGet(1, Temp)
  46.             Biblioteca(i - 1) = Temp
  47.         Next
  48.         FileClose(1)
  49.         Return True
  50.     End Function
  51.  
  52.     Public Function SalvaFile() As Boolean
  53.         Dim Temp As Libro
  54.         Dim i As Integer
  55.         Kill("Biblio.DAT")
  56.         FileOpen(1, "Biblio.DAT", OpenMode.Random, , , Len(Temp))
  57.         For i = 0 To nRec
  58.             FilePut(1, Biblioteca(i))
  59.         Next
  60.         MsgBox("Dato Salvato")
  61.         Return True
  62.     End Function
  63.  
  64. End Module



Cioè, non riesco a capire, mi deve creare un file .DAT con tutte le informazioni del record che carico? posso visualizzarle poi?

Ultima modifica effettuata da Il Totem il 29/12/2010 alle 10:49


SimonE
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 10:49
Mercoledì, 29/12/2010
Se non fosse per il Convert.ToInt32 direi che quel sorgente è scritto in VB6. Ossia, comunque è scritto al 90% in VB6 usando come ambiente di sviluppo un ide per .NET, il che mi fa accapponare la pelle...

Semplicemente:
- Dichiara un array di libri di 1001 posti. 1001 è una buona approssimazione di infinito... :noway:
- In CmdCarica_Click aggiunge un nuovo libro all'array sulla base dei dati immessi nelle textbox codice e titolo;
- In LeggiFile, legge dal file le strutture salvate in formato raw e le pone nell'array (accessibile globalmente);
- In SalvaFile esegue l'operazione complementare salvando l'array.


"Infelici sono quelli che hanno tanto cervello da vedere la loro stupidità."
(Fligende Blatter)

"Dubitare di se stessi è il primo segno d'intelligenza."
(Ugo Ojetti)
PM Quote