Newsgroup: it.comp.lang.visual-basic
Titolo: [?] modificare miofile.txt <---Super*URGENTE*

Ciao ragazzi purtroppo mi trovo in panne...
ho la necessità di modificare un file ASCHI ma non so come fare...
ho un file che contiene delle informazioni da importare in un programma già
esistente...
[Problema]
1) Il file in origine non contiene il segno pipe | e per poterlo importare
deve necessariamente averlo.. come lo   posso inserire e soprattutto come
faccio a dargli le mie limitazioni ( ad esempio tra il 1° e il 2° carattere)
[da sapere]
il file in origine è ordinato in righe quindi messo in colonna, diviso da
spazi regolari
[Esempio File Origine]
000    01    DATI ORIGINE    002    003
000    02    Dati origine 2      002    002
[Esempio File Modificato]
000 | 01 | DATI ORIGINE   |  002 |  003 + altre mie informazioni
000 | 02 | dati origine 2      |  002 |  002 + altre mie informazioni
spero che qualcuno possa postarmi un esempio o che magari mi possa dare un
consiglio
gli sarei eternamente grato....
certo di un vostro interessamento porgo a tutto questo NG Cordialità
Gianluca

000 | 02 | dati origine 2      |  002 |  002 + altre mie informazioni
Prima di tutto devi leggere il file riga per riga con il comando Line Imput
Ipotizziamo che ogni riga che leggi la assegni ad un variabile di nome Riga$
Usi le funzioni Instr e Mid per modificare Riga$
Riscrivi Riga$ su un secondo file o su un'altra variabile stringa
Mi spiace di non essere più preciso ma mi manca il tempo per buttarti giu un
po' di codice.
Comunque le funzioni che ti servono sono quelle (Mid e Instr) e non ti resta
da fare altro che schiacciare F1.
Ciao
Daniele

Gianluca
---------------------
Ciao!
Ti posto un esempio che spero ti possa illuminare:
Private Sub Command1_Click()
    Dim Riga(2) As String
    Dim RigaLetta As Integer
    Dim RigaScritta As Integer
    Dim Analizza As Integer, Gira As Integer
    Open "C:\Programmi\Microsoft Visual Basic\Progetti\Internet\Text\01.txt"
For Input As #1
        Do While Not EOF(1) 'Cerca la fine del file.
            Line Input #1, Riga(RigaLetta)    'Legge la riga di dati.
            RigaLetta = RigaLetta + 1
        Loop
    Close (1)
    For Analizza = 0 To RigaLetta - 1
    'Analizza ogni singola linea.
        For Gira = 1 To Len(Riga(Analizza))
            If Mid$(Riga(Analizza), Gira, 1) = Chr$(9) Then
                'Se trova il carattere di tabulazione, lo sostituisce con
"|".
                Riga(Analizza) = Left$(Riga(Analizza), Gira - 1) & "|" &
Right$(Riga(Analizza), Len(Riga(Analizza)) - Gira)
            End If
        Next Gira
    Next Analizza
    Riga(0) = Riga(0) & " - modificato da Marco Minerva"
    Riga(1) = Riga(1) & " - 
mar...@dmw.it
"
    Riga(2) = Riga(2) & " - per il NG it.comp.lang.visual-basic"
    Open "C:\Programmi\Microsoft Visual
Basic\Progetti\Internet\Text\01b.txt" For Output As #1
        'Scrive le modifiche nel file di testo.
        For RigaScritta = 0 To RigaLetta - 1
            Print #1, Riga(RigaScritta)
        Next RigaScritta
    Close (1)
End Sub
In questo esempio, viene aperto un file TXT e letto riga per riga. Per ogni
linea, viene controllata la presenza del carattere di tabulazione
("Chr$(9)"); se è presente, viene convertito con il segno "|". Ogni linea,
poi, viene modificata aggiungendo ogni volta delle stringhe diverse. Infine,
viene creato un nuovo file contenente tutte le linee modificate.
Nell'esempio, utilizzo un file contenente solo tre righe (per questo, c'è
l'istruzione "Dim Riga(2) as String"), ma è sufficiente una piccola modifica
per gestire file di qualsiasi lunghezza.
Il codice non è ottimizzato, anzi, l'ho buttato giù e l'ho provato una sola
volta, ma penso dovrebbe funzionare. Se hai altri problemi, contattami pure.
Marco Minerva
http://www.geocities.com/SiliconValley/Foothills/7260/
http://www.armaditaggia.com/marco