Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Aprire file in Delpih

  1. #1

    Aprire file in Delpih

    Devo caricare un file di testo in Delphi.

    Con dati numerici(e variabile intere) facevo:
    ASSIGNFILE(variabiletext, 'nome.txt');
    RESET(variabiletext);
    READ(variabiletext, variabile integer);
    (ripetuto per le righe da leggere)
    CLOSEFILE(variabiletext);

    Se però il file contiene stringhe ho provato ma mi carica solo la prima.
    Qualcuno sa perchè?


    Grazie

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Forse l'errore si trova proprio nella parte di codice che hai omesso con ripetuto per le righe da leggere.
    Tuttavia, ti consiglio di seguire un approccio diverso per la lettura delle stringhe. Usa la classe TStringList: questa classe è in grado di caricare e mantenere in memoria una lista di stringhe, aggiunte una ad una tramite codice usando un apposito metodo, oppure caricandole da un file. Prendi come esempio la porzione di codice riportata qui sotto:
    codice:
    procedure TForm1.Button1Click(Sender: TObject);
    var
      s: TStringList;
    begin
      s := TStringList.Create;
      try
        s.LoadFromFile('nomefile.txt');
        // ---> qui il codice di elaborazione delle stringhe caricate <---
      finally
        s.Free;
      end;
    end;
    In questo blocco di codice, viene creata un'istanza della classe TStringList. Attraverso il metodo LoadFromFile, carichiamo al suo interno il contenuto del file specificato come parametro. A questo punto, possiamo scandire tutte le linee di testo utilizzando la proprietà Items, oppure farci restituire tutto il contenuto del file in un'intera stringa tramite la proprietà Text. Consulta la Guida in linea di Delphi per maggiori informazioni sulle potenzialità della classe TStringList. Il costrutto try...finally garantisce la distruzione dell'oggetto (e il conseguente rilascio della memoria occupata) dopo l'uso, anche nel caso in cui si verifichi un errore.

    A mio parere, questo è il metodo più pulito e congeniale per caricare e elaborare file di testo in Delphi.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 1999
    Messaggi
    50
    io invece ho un file batch e lo vogio mandare in esecuzione alla pressione di un pulsante come posso fare???
    ---------------
    Alepio
    " barcollo ma non MOLLO "

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Nuovo topic?

    In generale, credo che dovresti aprire un nuovo topic quando intendi avviare una discussione su un argomento diverso da quello a cui hai risposto.

    Ad ogni modo, per eseguire un file batch, includi ShellAPI nella clausola uses della unit in cui hai inserito il codice di esecuzione e richiama la funzione API ShellExecute. Questa funzione ti permette di eseguire un comando della shell...specificando il tuo nome del tuo file batch (con il relativo percorso, se necessario), Windows dovrebbe mandarlo semplicemente in esecuzione. Consulta la Guida in linea di Delphi premendo F1 quando hai digitato ShellExecute per visualizzare il significato dei parametri che devono essere passati alla funzione.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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.