Ho un file di grandi dimensioni (articoli di Wikipedia in inglese solo database come file XML). Sto leggendo un personaggio alla volta usando BufferedReader
. Lo pseudocodice è:Il metodo BufferedReader ready in un ciclo while per determinare EOF?
file = BufferedReader...
while (file.ready())
character = file.read()
È effettivamente valido? Oppure ready
restituisce semplicemente false
quando è in attesa che l'HDD restituisca i dati e non in realtà quando è stato raggiunto lo EOF
? Ho provato a usare if (file.read() == -1)
ma sembra che mi sia imbattuto in un loop infinito che non sono riuscito a trovare.
Mi chiedo solo se sta leggendo l'intero file come le mie statistiche dicono che 444.380 pagine di Wikipedia sono state lette ma ho pensato che ci fossero molti più articoli.