Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18

Discussione: Leggere file

  1. #11
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    247
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Per "indefinito" cosa intendi? Possono essere decine così come centinaia di migliaia?
    …esattamente, comunque in genere sono sempre meno di 100, molto raramente sono di più…
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Se non prevedi un numero esagerato di righe potresti leggere il file con la funzione file() che praticamente ti genera un array in cui in ogni entry c'è una riga del file, così è facile ciclare tra le righe e modificarle per poi risalvare il file in formato txt.
    …ciclare le righe non è un problema, il problema e posizionarsi alla linea 95 di ogni riga e leggere i seguenti 11 caratteri…
    codice:
    $file_path = glob("C:\Users\Administrator\Desktop\*.txt");
    $file_path = $file_path[0];
    $file = fopen($file_path, "r+");
    $file_in_row = file($file_path);
    $i = 0;
    foreach ($file_in_row as $row_content){
         if ($i > 0) {
             fseek($row_content, 95); //ho qualche dubbio che funzioni
             //come leggo i caratteri?
         }
         $i++;
    }
    Ultima modifica di mapa3n; 12-03-2017 a 14:02

  2. #12
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Per questo ti dicevo di usare file(), se fai

    $contenuto = file('nomefile.txt');

    la riga 95 la trovi in $contenuto[94]

  3. #13
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    247
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Per questo ti dicevo di usare file(), se fai

    $contenuto = file('nomefile.txt');

    la riga 95 la trovi in $contenuto[94]
    ...scusa, mi sono espresso male: mi devo posizionare al carattere (colonna) 95, non alla riga 95...

  4. #14
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Substr serve a prendere pezzi di stringa

  5. #15
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    247
    Quote Originariamente inviata da clasku Visualizza il messaggio
    Substr serve a prendere pezzi di stringa
    ...cos'?
    codice:
    $file_path = glob("C:\Users\Administrator\Desktop\*.txt");
    $file_path = $file_path[0];
    $file = fopen($file_path,"r+");
    $file_in_row = file($file_path);
    $i =0;
    foreach($file_in_row as $row_content){
         if($i >0){
             substr($row_content, 95, 11); //così?
         }     
    $i++;
    }
    Ultima modifica di mapa3n; 14-03-2017 a 21:36

  6. #16
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Metti 94 al posto di 95 (gli indici in PHP partono da zero).
    Scriverei meglio il codice però: ad esempio, a che serve "if($i > 0)"?

  7. #17
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    247
    Quote Originariamente inviata da clasku Visualizza il messaggio
    Metti 94 al posto di 95 (gli indici in PHP partono da zero).
    Scriverei meglio il codice però: ad esempio, a che serve "if($i > 0)"?
    …siccome $i è uguale a 0 in partenza con l'if salto la prima riga, che non mi interessa…

  8. #18
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    e perché non usi la chiave dell'array?
    Codice PHP:
    foreach($file_in_row as $k => $row_content){
         if(
    $k >0){
             
    substr($row_content9511); //così?
         

    così non rischi di "dimenticarti" di incrementare $i

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.