Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    271

    [File di testo]

    Salve ragazzi,
    Devo fare un programmino che legge un file di testo. Visto che non ho molt dimestichezza con i file di testo mi chiedevo se qualcuno di voi potrebbe darmi una mano
    Il file è così composto

    Cod1 Descrizione1 Prezzo1
    Cod2 Descrizione2 Prezzo2
    .................................................. ................
    Cod-n Descrizione-n Prezzo-n

    15 caratteri per il codice
    35 caratteri per la descrizione
    9 caratteri per il prezzo (compreso il separatore decimale)

    Mi servirebbe sapere come faccio a leggere i tre campi in tre variabili.
    Non dovrebbe essere troppo difficili per chi è abituato a lavorare su questi tipi di file...

    Grazie.

  2. #2
    dai un occhio alla guida e quardati i comandi

    Write #filenumber, [outputlist]
    Print #filenumber, [outputlist]
    Input #filenumber, varlist

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    271
    OK ci sono riuscito in parte.

    Ho aperto il file in questo modo

    Open file For Random As #1 Len = 61

    ora vorrei fare un ciclo dal 1° all'ultimo record del file di testo, ma non so come si fa ad indicare il numero di record del mio file.

    Dovrei scrivere una cosa del tipo

    Do While Pos <= nRecord
    Get #1, pos,

    Dove a è una stringa di 60 caratteri; nRecord come lo reperisco?

  4. #4
    Utente di HTML.it L'avatar di Mabi
    Registrato dal
    May 2002
    Messaggi
    1,245
    Se il file di testo che devi leggere l'hai scritto da programma con la Write allora è più facile da gestire:
    codice:
    Dim NomeFile As String
    
    Dim Var1 As String
    Dim Var2 As String
    Dim Var3 As String
    
    NomeFile = "C:\prova.txt"
    
    Open NomeFile For Input As #1
      Do Until EOF(1)
        Input #1, Var1, Var2, Var3
        Var1 = Trim(Var1)
        Var2 = Trim(Var2)
        Var3 = Trim(Var3)
        MsgBox Var1 & " " & Var2 & " " & Var3
      Loop
    Close #1
    Se invece il file è scritto in modo diverso devi dividere la singola riga nelle tue variabili:
    codice:
    Dim NomeFile As String
    
    Dim Riga As String
    Dim Var1 As String
    Dim Var2 As String
    Dim Var3 As String
    
    NomeFile = "C:\prova.txt"
    
    Open NomeFile For Input As #1
      Do Until EOF(1)
        Line Input #1, Riga
        Var1 = Trim(Mid(Riga, 1, 15))
        Var2 = Trim(Mid(Riga, 16, 35))
        Var3 = Trim(Mid(Riga, 52, 9))
        MsgBox Var1 & " " & Var2 & " " & Var3
      Loop
    Close #1

  5. #5
    OK ci sono riuscito in parte.

    Ho aperto il file in questo modo

    Open file For Random As #1 Len = 61

    ora vorrei fare un ciclo dal 1° all'ultimo record del file di testo, ma non so come si fa ad indicare il numero di record del mio file.

    Dovrei scrivere una cosa del tipo

    Do While Pos <= nRecord
    Get #1, pos,

    Dove a è una stringa di 60 caratteri; nRecord come lo reperisco?
    Dim nRecord as String
    cosi: String$(nRecord,300)
    Get,,nRecord
    jabjoint

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.