|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 367
|
Files sequenziali
Ciao.
Dovrei scrivere un files di testo di tipo seguenziale. Non ricordo per niente come si trattavano questo tipo di files. In pratica dovrei poter scrivere un files di testo seguenziale, dichiarando lunghezza e nome dei campi da creare. Potete aiutarmi, magari postandomi un frammento di codice di esempio? Grazie. Carmen |
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Jul 2002
Messaggi: 212
|
Dubito che qualcuno ti possa aiutare se non specifichi almeno il linguaggio di programmazione!
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 367
|
Vero. Lo dimentico spesso. Il linguaggio e il VB6
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Ti posto un pezzo di codice...spero che ti sia chiaro:
Codice:
Option Explicit
Public Type RecordAnagrafe
lIDFamiglia As Long
lAtto As Long
sRuoloFamiglia As String * 15
nRuoloFamiglia As Integer
sCognome As String * 20
sNome As String * 20
dtNascita As Date
sSesso As String * 1
sComuneNascita As String * 20
sProvinciaNascita As String * 2
sViaRes As String * 30
nCivicoRes As Integer
sComuneRes As String * 20
sProvinciaRes As String * 2
sStatoCivile As String * 20
lAttoM As Long
sCognomeConiugeM As String * 20
sNomeConiugeM As String * 20
sComuneM As String * 20
sProvinciaM As String * 2
dtDataM As Date
End Type
Public glMaxRecord As Long
Public glMaxIDFam As Long
Public glMaxAttoM As Long
Public RecAnagrafe() As RecordAnagrafe
----------------------------------------------------------------------------
Sub LeggiFile()
Dim nFreeFile As Integer
Dim RecLen As RecordAnagrafe
Dim lI As Long
nFreeFile = FreeFile
On Error GoTo ErroreFile
Open "../Data/Anagrafe.db" For Random As #nFreeFile Len = LenB(RecLen)
'calcolo il numero di record
glMaxRecord = LOF(nFreeFile) / LenB(RecLen)
glSalvato = glMaxRecord
If glMaxRecord > 0 Then
'ridimensiono la tabella
ReDim RecAnagrafe(glMaxRecord)
'carico i file
For lI = 1 To glMaxRecord
Get #nFreeFile, lI, RecAnagrafe(lI)
'salvo l'ID maggiore della famiglia
If glMaxIDFam < RecAnagrafe(lI).lIDFamiglia Then
glMaxIDFam = RecAnagrafe(lI).lIDFamiglia
End If
'salvo il numero di atto matrimonio
If glMaxAttoM < RecAnagrafe(lI).lAttoM Then
glMaxAttoM = RecAnagrafe(lI).lAttoM
End If
Next lI
End If
Close #nFreeFile
End Sub
Sub ScriviFile()
Dim nFreeFile As Integer
Dim RecLen As RecordAnagrafe
Dim lI As Long
nFreeFile = FreeFile
On Error GoTo ErroreFile
Open "../Data/Anagrafe.db" For Random As #nFreeFile Len = LenB(RecLen)
'scrivo i file
For lI = glSalvato + 1 To glMaxRecord
Put #nFreeFile, lI, RecAnagrafe(lI)
Next lI
Close #nFreeFile
End Sub
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 367
|
Ok, ti ringrazio del pensiero, soprattutto visto che si trattava di un post di qualche giorno fà.
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
prego...ma siccome nn sono stato a casa in questi giorni ho letto anche alcune pagine arretrate
ciaooooooooooooo |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:38.


















