Visualizzazione dei risultati da 1 a 7 su 7

Discussione: fgets-fread

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    49

    fgets-fread

    Salve, ho necessita di leggere il contenuto di un file fino ad una determinata posizione espressa in byte.

    ho fatto così
    Codice PHP:
    <?$file fopen("intero1.txt","r");fseek($file,0);$testo fread($file,12345);echo $testo;fclose($file);
    ?>
    Funziona, ma chi ha controllato questo codice mi dice che in realtà non legge fino al byte 12345.

    Ho sbagliato qualcosa?

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    E fino a dove legge?
    Hai considerato il fatto che parti da 0 e non da 1?
    Che cosa contiene il file che devi leggere?
    Esistono caratteri che non occupano solo un byte (gli ideogrammi, il cirillico ed altri), ma di più, hai considerato anche questo?
    Ultima modifica di Alhazred; 20-12-2013 a 00:21

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    49
    si, ma chi mi ha "corretto" questo script dice che leggo circa 700 posizioni prima.. noti qualcosa di sbagliato in quello che ho scritto?

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Ho editato il mio post mentre rispondevi.
    Che cosa contiene il file che devi leggere?
    Esistono caratteri che non occupano solo un byte (gli ideogrammi, il cirillico ed altri), ma di più, hai considerato anche questo?

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    49
    questo no.. è un file compilato, con caratteri strani.. però teoricamente sia a me che a lui la lunghezza del file dovrebbe coincidere..
    Comunque è una buona teoria, ha un senso

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Secondo me dovreste prima verificare questa cosa, perché il numero di caratteri in generale non è pari al numero di bytes letti, proprio per l'esistenza di caratteri che ne occupano più di 1.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    49
    ok grazie mille

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.