Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    34

    appendere in testa e in coda a un file di testo

    salve,

    avrei bisogno di aggiungere alcune righe all'inizio e altre alla fine di alcuni file di testo... sapete darmi qualche suggerimento sulla via piu' corretta per farlo ?

    grazie

  2. #2
    Per la coda basta usare l'opzione append quando apri il file e poi ci scrivii normalmente... in Perl è:

    open(FILE, ">>file.txt")

    >> significa in append ed è pari pari stile bash.
    Mentre per la coda, non ne conosco opzioni ma ti posso consigliare di mettere tutto il file in un buffer, poi lo apri in scrittura, scrivi quello che devi scrivere e gli scrivi dopo il buffer in modo da mettere il tuo testo in testa

  3. #3
    Ciao,

    mettere tutto il file in un buffer va bene solo se si tratta di piccoli file, altrimenti è dannoso molto meglio scorrerlo.

    per mettere tuuto il file in un buffer si può usare:

    open (FILE, "<file.txt");
    @file = <FILE>;
    close FILE;

    e in @file ci sarà tutto il file.

    Ma se il file è grosso consiglio:

    use FILE::Copy; # questo modulo è standard

    # apro in lettura il file da modificare
    open (LEGGO, "<$leggo.txt");
    # apro in scrittura il file che conterrà il nuovo testo
    open (SCRIVO, ">$scrivo.txt");
    # scrivo all'inizio il nuovo testo
    print SCRIVO "prima nuova riga\n";
    print SCRIVO "seconda nuova riga\n";
    # copio il vecchio testo
    while (<LEGGO>) {
    print SCRIVO;
    }
    close SCRIVO;
    close LEGGO;
    # rinomino il file con il nuovo testo col il vecchio nome
    move ("scrivo.txt", "leggo.txt");

    ad ogni modo ancora meglio sarebbe l'uso dei moduli Tie::File che sono potentissimi, ma necessitano di qualche base di perl.
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    34
    Vi ringrazio molto per i suggerimenti.
    Dato che ho un po' di tempo per studiarci sopra penso che daro' un'occhiata anche ai moduli Tie::File e vedro' quale metodo mi conviene scegliere.

    grazie ancora

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 © 2024 vBulletin Solutions, Inc. All rights reserved.