Tôi có một tệp lớn (cơ sở dữ liệu bài viết Wikipedia tiếng Anh duy nhất dưới dạng tệp XML). Tôi đang đọc một ký tự cùng một lúc bằng cách sử dụng BufferedReader
. Mã giả là:BufferedReader sẵn sàng phương pháp trong một vòng lặp while để xác định EOF?
file = BufferedReader...
while (file.ready())
character = file.read()
Điều này thực sự có hợp lệ không? Hoặc sẽ ready
chỉ cần trả lại false
khi nó đang chờ HDD quay trở lại dữ liệu và không thực sự khi đạt được EOF
? Tôi đã cố gắng sử dụng if (file.read() == -1)
nhưng dường như chạy vào một vòng lặp vô hạn mà tôi thực sự không thể tìm thấy.
Tôi chỉ tự hỏi nếu nó đang đọc toàn bộ tập tin như số liệu thống kê của tôi nói 444.380 trang Wikipedia đã được đọc nhưng tôi nghĩ có nhiều bài viết hơn.