PDA

Visualizza la versione completa : Loop per salvataggi


Jonny Gulash
21-06-2002, 11:49
Ciao.
Qualuno sa se è possibile fare un loop per salvare dei dati in un file .txt?
Mi spiego meglio: ho dei numeri in una listbox e dovrei salvarli sul file esterno...... visto che possono essere anche tanti nn mi sembra il caso di scrivere "print" per ogni riga. C'è una soluzione alternativa?

A proposito..... un file .txt esterno fino a quante righe può contenere senza creare problemi?


Grazie ciao.:gren:

darkblOOd
21-06-2002, 12:06
Dim x as integer
For x = 0 to NumeroMaxDiIndici( non mi ricordo, mi pare ListBox.ListCount -1 :master: )
'ovviamente hai già aperto il file...
Print ... , ValoreCorrenteListIndex
next x


:rolleyes:

Jonny Gulash
22-06-2002, 10:51
Una cosa simile l'avevo già provata.... il problema è che così salva sempre sulla stessa riga, quindi resta nel file solo l'ultimo elemento della lista...... che fare?:gren:

Janx
22-06-2002, 17:23
*** il ciclo devi aprirlo perima di lavorare sul file ***

For i = 1 To List1.ListCount -1

List1.ListIndex = i

Open TuoFile For Append As #1
Print #1, List1.Text
Close

Next i

Janx
22-06-2002, 17:23
...scusa
For i = 0 To List1.ListCount -1
:)

Jonny Gulash
24-06-2002, 12:09
Ehi funziona! Wonderful!

A questo punto, però, "mi sorge spontanea" qualche altra domanda:

1. Un file .txt quante righe può contenere senza far impallare il programma?
2. Che differenza c'è tra "Open for append" e "Open for Output"?
3. C'è un modo per cancellare completamente il contenuto di un file .txt?

Grazie a tutti

Maldito
24-06-2002, 12:14
risposta 1- pressochè ... il resto dello spazio del tuo HD - lo spazio di swap di windows? :gren:

risposta 2- append continua a scrivere dall'ultimo byte scritto + 1 in poi.....
output inizia a scrivere da 0.

risposta 3 - di conseguenza per sbiancare il file lo apri per output e ci putti "" ok? :metallica

darkblOOd
24-06-2002, 13:07
@ Jonny:
guarda che non scrive sulla stessa riga se usi print :p



@ janx:
con il codice che hai postato tu (apri il file dentro il ciclo) se devi scrivere 1000 righe ti apre e chiude il file 1000 volte! :eek:

che senso ha? :dottò:


LEGGETE MEGLIO IL MIO 1° POST :tongue:


:ciauz:

Janx
24-06-2002, 13:33
@ darkblOOd

...siccome Jonny Gulash ha scritto:

" Una cosa simile l'avevo già provata.... il problema è che così salva sempre sulla stessa riga "

non ci ho pensato molto, quindi ho detto "così scrive riga per riga per forza", anche se a pensarci nn capisco come il tuo (giustissimo) codice nn funzioni nel caso di Jonny Gulash ;)

darkblOOd
24-06-2002, 13:55
Originariamente inviato da janx
@ darkblOOd

...siccome Jonny Gulash ha scritto:

" Una cosa simile l'avevo già provata.... il problema è che così salva sempre sulla stessa riga "

non ci ho pensato molto, quindi ho detto "così scrive riga per riga per forza", anche se a pensarci nn capisco come il tuo (giustissimo) codice nn funzioni nel caso di Jonny Gulash ;)

perchè probabilmente non l'ha neanche provato (o non ha interpetrato correttamente il non-codice che ho scritto)


in + nel codice cha hai postato tu, se non apri il file for append, ti ritrovi solo l'utlima riga salvata.

:gren:

Loading