Visualizzazione risultati 1 fino 9 di 9

Discussione: Scrittura file

  1. #1
    Guest

    Predefinito Scrittura file

    Ciao a tutti,
    vorrei scrivere solo una parte di un file di testo senza dover riscrivere tutto il file ...avete qualche idea???

  2. #2
    Guest

  3. #3
    Guest

    Predefinito

    Non intendevo scrivere un file 'da capo' ma volevo modificare solo una riga di un file....

  4. #4
    Guest

    Predefinito

    Citazione Originalmente inviato da toninosite
    Non intendevo scrivere un file 'da capo' ma volevo modificare solo una riga di un file....
    Com'è costruito il file che vuoi modificare?

    Giusto per andare direttamente al problema

  5. #5
    Guest

    Predefinito

    ESEMPIO

    riga1: toninosite
    riga2: sito
    riga3: file

    io vorrei riscrivere a prima riga senza cancellare le altre quindi

    riga1: toninosite
    riga2: sito
    riga3: nuovofile

  6. #6
    L'avatar di Leo91
    Leo91 non è connesso Altervistiano Junior
    Data registrazione
    28-03-2004
    Residenza
    alle tue spalle
    Messaggi
    728

    Predefinito

    Cioè vorresti che una riga x diventi y ?
    Con il file strutturato ad esempio così:
    ID_RIGA|NUM_RIGA|CONT_RIGA|\n

    Codice PHP:
    <?
    $id_riga
    = $_GET['id_da_modificare']; //ricavo l'id della riga da modificare in qualche modo (in questo caso lo prendo dall'url)
    $file = file("file.txt");
    foreach(
    $file as $rigo) { //Scorro il file
    $ex = explode("|",$rigo); //imposto il carattere da riconoscere per distaccare un elemento dall'altro
    if($ex[0] == $id_riga) { //se l'id nella riga è uguale a quello preso
    $w[] = "$id_riga|$ex[1]|nuovocontenuto!|\n"; //imposta quell'indice di array con un nuovo contenuto
    }else{ //Altrimenti
    $w[] = $rigo; //il pezzo di array rimane lo stesso del file
    }
    }
    $ok = implode("",$w); //unisco l'array
    $fp = fopen("file.txt","w+"); //apro in lettura il file cancellandone il contenuto
    fwrite($fp, $ok); //scrivo la variabile che ha unito l'array
    fclose($fp); //chiudo il file!
    ?>
    Così puoi modificare qualsiasi riga!

  7. #7
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Citazione Originalmente inviato da toninosite
    ESEMPIO

    riga1: toninosite
    riga2: sito
    riga3: file

    io vorrei riscrivere a prima riga senza cancellare le altre quindi

    riga1: toninosite
    riga2: sito
    riga3: nuovofile
    Devi sempre leggere tutto il file e poi riscriverlo.
    Codice PHP:
    <?
    $file
    =file("nomefile.txt");
    $file[2]="nuovo".$file[2];
    $fp=fopen("nomefile.txt","w");
    for(
    $i=0;$i<count($file);$i++)
    fwrite($fp,trim($file[$i])."\n");
    fclose($fp);
    ?>
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  8. #8
    Guest

    Predefinito

    io volevo riscrivere solo la riga desiderata come un vettore ....diciamo..... ho provato ad incrementare il puntatore che punta all'inizio del file ma niente....

  9. #9
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Citazione Originalmente inviato da toninosite
    io volevo riscrivere solo la riga desiderata come un vettore ....diciamo..... ho provato ad incrementare il puntatore che punta all'inizio del file ma niente....
    Citazione Originalmente inviato da funcool
    Devi sempre leggere tutto il file e poi riscriverlo.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •