00 15/01/2010 21:44
Re:
johnwhile, 15/01/2010 20.41:

allora stasera mi sono messo a ca22eggiare un pò con il pc (uso un python portable perchè non ho i diritti di amministratore).
Più che i tutorial su internet ho trovato quello che cercavo in un world editor versione iniziale di KnightErrant, ho capito più o meno come a fatto lui a leggere i dati ( char, int e float ).
Però come faccio a leggere esempio di continuo fino alla fine del file ???
Dovrei mettere una specie di controllo con while cioè fai fin tanto che End-Of-File... ma come si fà ?

PS: la cosa utile era proprio leggere la stringa usando il numero di caratteri estratto dal numero messo all'inizio della stessa




leggendo in rete il python non ha una funzione eof (end of file).
Puoi procedere in due modi:
1- usi read senza argomenti leggendo tutto il file
2 - usi read passandogli di volta in volta il numero di byte da leggere. la documentazione dice che quando raggiungi la fine del file ti restituisce stringa vuota. quindi subito dopo averla usate devi controllare. es:
stringaLetta = file.read(numero_byte)
if lunghezza di stringaLetta è 0 allora hai raggiunto la fine del file

se tu gli dici di leggere 5 byte, ma ne mancano 3 alla fine, lui ne legge 3, quindi potresti pure fare il controllo se il numero di byte letti è inferiore a quello che tu gli hai detto, ma è meglio usare la lo pseudo codice che ho messo prima.

"Ci vuole la carne nelle salsicce, il fumo se ne esce!" (proverbio)
"Il potere é quando abbiamo ogni giustificazione per uccidere e non lo facciamo " (Schindler's list)



Peninsula Italica Fan