PDA

View Full Version : CHI MI SPIEGA QUESTA STRANEZZA???


willy23
23-03-2004, 16:40
Ragazzi chi mi spiega questa stranezza?
Usando visual basic 6 devo scrivere su un file in modalità random con len = 20 come nell'esempio sotto.
Quando scrivo sul primo record, il file che si crea è grande 6 byte, quindi non mi rispetta il len = 20 che gli ho dato.
Nei record successivi invece, lasciando tutto uguale ma passando al record 2, il file diventa grande 26 byte quindi 6 + 20.
Stessa cosa proseguendo con record più alti. Es

Dim x As String
x = "ciao"
Open "c:\gggggg.ggg" For Random As #1 Len = 20
Put #1, 1, x
Close #1

Come è possibile questa cosa? perchè il primo record me lo riconosce per forza con le sue dimensioni , e per quelli successivi mi rispetta il len = 20 ??????
Vi prego fatemi sapere qualcosa
Grazie a tutti voi

matpez
23-03-2004, 17:23
Prova così:

Private Sub Form_Load()

Dim x As String * 20

x = "ciao"
Open App.Path & "\gggggg.txt" For Random As #1 Len = 20
Put #1, 1, x
Put #1, 2, x
Close #1

End Sub

willy23
23-03-2004, 17:38
Ei Matpez, non so come ringraziarti, infatti erano tre ore che mi scervellavo e non riuscivo a trovare la soluzione.
Avevo provato anche io con questo metodo, ma scordavo di mettere anche len = 20 sul file open e quindi il primo record funzionava, ma i restanti aumentavato i byte a valori alti.

Private Sub Form_Load()

Dim x As String * 20

x = "ciao"
Open App.Path & "\gggggg.txt" For Random As #1 Len = 20
Put #1, 1, x
Put #1, 2, x
Close #1

End Sub

Grazie ancora

matpez
23-03-2004, 19:14
Prego :p