Oppure

Loading
11/10/07 21:35
gecko6989
Ho creato dei record "concatenati" e vorrei salvarli su un file ad accesso casuale, quando premo sul cmd button "salva"...ma mi da un errore.
Vi posto i record dichiarati nel modulo:
Public Type SCATOLINA
telefono1 As String * 10
telefono2 As String * 10
cellulare As String * 15
End Type

Public Type SCATOLA
nome As String * 10
cognome As String * 10
telefono(0 To 100) As SCATOLINA
End Type

Public Matrioska(0 To 25) As SCATOLA


Come faccio a salvarli in un file ad accesso casuale??
aaa
12/10/07 12:34
albertking82
dim n as integer
n=freefile
path="metti il percorso"

open path for random as#n
-----qui scrivi la procedura che vuoi
close #n
aaa
12/10/07 19:45
gecko6989
Postato originariamente da albertking82:

dim n as integer
n=freefile
path="metti il percorso"

open path for random as#n
-----qui scrivi la procedura che vuoi
close #n


avevo già fatto così:
open (app.path & "file.txt";) for random as#1
Put #1, 1, Matrioska(1)
close #1

però mi da questo errore:
Errore di run-time "59":
Lunghezza del record nn valida


Come risolvere e quindi infine riuscire a salvare???
Ultima modifica effettuata da gecko6989 12/10/07 20:34
aaa
13/10/07 0:10
albertking82
Sei sicuro che l'errore non dipenda dal fatto che hai dichiarato un record del tipo che hai appena inzializzato? cioè telefono(0 To 100) As SCATOLINA
e del fatto che hai dichiarato un vettore all'interno di un tipo? Ti chiedo questo perchè il il codice di accesso al file random col metodo put mi sembra perfetto.Prova a dichiarare come variabile e non come campo il telefono.Spero di esserti stato di aiuto.
;)
aaa
13/10/07 0:15
albertking82
Sai cosa può essere?Tu hai dichiarato un campo come vettore indicizzato(0 to 100) e la variabile matrioska(0 to 25).Potrebe essere che la dimensione del campo sia più grande del limite consentito dalla variabile matrioska.Prova a far si che la variabile matrioska sia un vettore ridimensionabile
dim mastrioska() as scatola.
aaa
13/10/07 12:05
gecko6989
Postato originariamente da albertking82:
Prova a dichiarare come variabile e non come campo il telefono.
;)


Quando"telefono" lo metto come variabile (cioè: << dim telefono as string >>;) funziona tutto.

Il problema è che "telefono" mi serve dichiararla come campo contenente un'altro record. (cioè: << dim telefono as SCATOLINA >>;). Solo che quando provo a salvare mi dà l'errore.

Non c'è un metodo per salvare??? Uffa...
Ultima modifica effettuata da gecko6989 13/10/07 13:35
aaa