Newsgroup: it.comp.lang.visual-basic
Titolo: file aperti in modo sequenziale

Vi chiedo aiuto, ancora una volta...
allora io ho un bel file aperto in modo sequenziale ok? del tipo
ciao
come
stai
oggi
è
una
bella
giornata
ok...
è possibile posizionarmi sulla 3 righa per esempio, e cambiare stai con
"ciao"???
Con i file in vb non ho mai lavorato (a scuola (si sono a scuola... terza
sup) usiamo pascal per ora.. l'anno prox. C++, ma a me piace vb...)
Sono sicuro che per file aperti in modo casuale con seek (almeno in
pascal...) ci si può muovere.. se non è seek, ci sarà un'altra funzione, ho
guardato.. LOC, LOF... ecc. forse, ma non è questo il problema...
il problema è: si può fare lo stesso con i file aperti in modo
sequenziale??? spero proprio di si, altrimenti mi tocca riscrivere tutto
adattando al modello nuovo...  se esiste mi dite COME???
Denghiu... ;-(
Augusto


non si può.. ti devi riscrivere il primo pezzo del file, la nuova
stringa, poi il resto del file originale  :(
Faber

sequenziale??? 
direi proprio di no, altrimenti non sarebbe un' apertura sequenziale ;-)
ciao, hal

 ha scritto nel messaggio
news:9gbb4e$87fhg$1...@ID-66268.news.dfncis.de...


 direi proprio di no, altrimenti non sarebbe un' apertura sequenziale ;-)
finalmente ho capito perchè sequenziale... si avevo un'idea.. però in pascal
ero riuscito a far
una cosa del genere... con un po di EOL che in vb non ho trovato (ma che
sarà
sicuramente line input credo) contanto quante volte andavo a capo... vabbè..
adesso mi metto a riscrivere il mio bl programma (se così lo possiamo
chiamare :)
grazie, Augusto
PS per faber.
Ok mi riscarico i 16000 post (dovete sapere che siccome ho un server per le
news non
so dove, ho l'ora in avanti... faber mi ha dato il nome di un server
tedesco. il prob è che devo
riscaricare i 16000 post :(
ma aspettate un attimo ok? appena ho un pochetto di tempo, lo faccio. no
problem.
close #1

Attenzione hai l'orario del tuo pc sbagliato...

 ha scritto
ragazzi, facciamo che provate a regolare l'ora dei vostri post ?
voi due siete regolarmente avanti di 22 ore.
piu' che al server, penserei che state usando lo stesso pc.
nel caso, non e' complesso:
2 clic sull'orologino nel traybar, e regolate l'ora.
se invece e' il server news, cambiatelo.
scusate ma e' abbastanza snervante trovarsi vari messaggi sfasati
d'orario.
grazie, a.

 dei record dei binari è fissa?
Veramente sono quelli ad accesso casuale che devono avere la lunghezza
record fissa.
--
----------------------------------------------------------------------------
Esiste un luogo dove tecnologia e arte si incontrano
www.tecnologiaEarte.net
----------------------------------------------------------------------------
Gianluca Pisano

Anche se molti si metteranno a ridere ti dico che io lavoro esclusivamente
con sequenziali.
Il problema che poni io l'ho risolto in questo modo:
Dim a As String
Dim x() As String
Dim risposta As String
risposta = MsgBox("Confermi le modifiche al prodotto?", vbYesNo)
    If risposta = vbYes Then
        FileCopy App.Path + "\prodotti\prod.txt", App.Path +
"\prodotti\prod.tmp"
        Kill App.Path + "\prodotti\prod.txt"
            Open App.Path + "\prodotti\prod.tmp" For Input As #1
                Open App.Path + "\prodotti\prod.txt" For Append As #2
                   Do While Not EOF(1)
                    Line Input #1, a
                    x = Split(a, "~")
                    If x(0) <> xb(0) And x(1) <> xb(1) And x(2) <> xb(2) And
x(3) <> xb(3) Then
                    Print #2, Join(x(), "~")
                    End If
                   Loop
            Close #1
            Close #2
        Kill App.Path + "\prodotti\prod.tmp"
    End If
In poche parole:
eseguo una copia temporanea del file
cancello l'originale
apro in lettura il file temporaneo
apro in scrittura (modalità append) un file con estensione originale
inizio a leggere ogni riga del file temporaneo
verifico la condizione che mi serve (nel tuo caso la parola ciao)
se soddisfatta allora registro la sostituzione
procedo a scrivere tutto il resto del file
cancello il file temporaneo
Spero di esserti stato di aiuto
Ciao
                                                        Pixel
P.S. 1
Nel caso di sopra io uso la funzione split perchè la mia linea è composta da
campi delimitati da ~ (tilde)
e devo verificare pià di una condizione, ma tu puoi adattare il sorgente
come credi.
P.S. 2
Sicuramente esistono dei comandi belli e pronti, ma mi definisco un
"artigiano" del VB.... :-D