Newsgroup: it.comp.lang.visual-basic
Titolo: Ancora su input e output. Scusate, ma non ci capisco nienteeeee!!!

Ciao ragazzi!
Ho un problema con questi famigerati INPUT e OUTPUT: come diavolo devo
fare per fargli leggere o scrivere in una riga specifica????
Mi va bene anche numerare le righe (ma non credo che sia necessario,
visto che le dll di windows non sono numerati..)...
Accidenti!!! Non è possibile che tutte le volte debba rileggere tutte
le informazioni di un file!!! Ho guardato l'help del visual basic 5,
ma non riesco a trovare quello che voglio io, ne tra gli esempi, ne
tra le spiegazioni. Se mi dite voi cosa diavolo devo cercare, forse
riesco a cavarmela da solo, ma se mi aiutate con qualche linea di
codice, è meglio.....
Grazie in anticipo.
ByeZ!
Alkondor

 fare per fargli leggere o scrivere in una riga specifica????
Devi usare/crearti un file ad accesso casuale per leggere/scrivere una
specifica linea.
Cerca nell' help (visto che ora ce l'hai :-) ) tutto ciò che è riconducibile
a 'File' e vedrai che non c'è niente di difficile.
Ad esempio questo è un pezzo di un' esempio tratto dall'help:
Type Record   ' Definisce il tipo dell'utente.
   ID As Integer
   Name As String * 20
End Type
Dim MyRecord As Record   ' Dichiara la variabile.
Open "FILEPROV" For Random As #1 Len = Len(MyRecord)
' Chiude prima di riaprire in una modalità diversa.
Close #1
Ciao
Daniele
---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
 
http://www.murialdo.it/it_lang_vb
---------------------------------------------------------------------------

Ciao,
ricordati che input e output sono dei sistemi di letta file
sequenziali. Il che significa che ogni volta lo devi leggere e scivere
tutto.
Se vuoi comunque utilizzarle, forse ti conviene caricare il testo in
una vettore, modificare la riga che vuoi e poi riscrivere tutto il
vettore.
Altrimenti se fosse troppo lungo, apri in file in lettura ed un'altro
in scrittura, poi leggi e scrivi le righe che devono rimanere
invariate e leggi modifica e scrivi le righe che dovranno essere
modificate.
Spero di essere stato chiaro altrimenti fammi sapere precisamente cosa
devi fare.
Ciao Massimo.

 codice, è meglio.....
Per spostare il cursore in un punto preciso basta usare Seek. La sintassi è
Seek #handledelfile, posizione. Per esempio, per inputtare (o inputtanare??)
un pezzo di un articolo di giornale (così siamo sicuri che in realtà non sia
vuoto di contenuti....) alla posizione 64 puoi fare:
' NOTA: eccetto che per la modalità Random, qui caratteri = byte
Dim txt As String * 1024    ' Lo mettiamo di lunghezza fissa, così siamo
sicuri che "inputta" 1024 car. alla volta
Open "Fuckfile.txt" For Input Lock Write As #1
Line Input #1, txt
Line Input #1, txt
Line Input #1, txt        ' In questo modo passa la posizione 64, perché ha
preso 1024 caratteri alla volta (* 3 = 3072 = 3kb)
Seek #1, 64              ' Torna alla pos. 64
Line Input #1, txt        ' Adesso ha preso i 1024 caratteri a partire dal
64esimo.
Close #1
End
Per il fatto di input ed output contemporaneamente sullo stesso file una
cosa SICURA che puoi fare è:
1. Aprire il file da modificare in input (es. Fuckfile.txt) se le modifiche
da fare sono basate sul file originale
2. Creare un nuovo file modificato in output (temporaneo es. Fuckfile.tmp)
3. Scrivere le modifiche da fare nel file temporaneo
4. Chiudere entrambi i file
5. Copiare il file temporaneo sovrascrivendo quello originale (x es. tramite
la funzione delle API CopyFile o eliminando il file - Kill - e rinominando
il file temporaneo SE SI TROVANO NELLA STESSA DIR)
AlexS

preso 1024 caratteri alla volta (* 3 = 3072 = 3kb)
Ringrazio in anticipo chiunque mi risponderà........
 
ByeZ!
Alkondor
Togliere NOSPAM per rispondere in e-mail
*****************************************************
Riesco a resistere a tutto fuorichè alle tentazioni! 
*****************************************************

Ciao,
non so bene quale sia il tuo problema però potresti risolverlo usando una
RText Box.
Ti crei il file in formato RTF (ad esempio da Word) con gli *** . Poi usi la
funzione FindText per trovare le ***. Ti posizioni la e cambi le ***.
il controllo RTF ti permette di salvare o caricare facilmente il file con i
metodi LoadFile o SaveFile. In teoria puoi anche caricare semplici file di
testo, però dovresti controllare.
CIAO.
Alkondor <alko...@freemail.itNOSPAM> wrote in message
37c55a6d...@news.tin.it...
