Tôi đang cố gắng đọc trong một tệp lớn (700GB) và từng bước xử lý nó, nhưng mạng tôi đang làm việc sẽ thỉnh thoảng đi xuống, cắt truy cập vào tệp. Điều này ném một java.io.IOException nói với tôi rằng "Tên mạng được chỉ định không còn khả dụng". Có cách nào mà tôi có thể bắt ngoại lệ này và chờ đợi, nói, mười lăm phút, và sau đó thử lại đọc, hoặc là đối tượng Reader chiên khi truy cập vào tập tin bị mất?Khôi phục từ IOException: tên mạng không còn có sẵn
Nếu trình đọc được hiển thị vô dụng khi kết nối bị mất, có cách nào để tôi có thể viết lại theo cách sao cho tôi "lưu địa điểm của tôi" và sau đó bắt đầu đọc từ đó mà không phải đọc và loại bỏ tất cả dữ liệu trước nó? Ngay cả chỉ nhai dữ liệu mà không cần xử lý phải mất một thời gian dài khi có 500GB của nó để có được thông qua.
Hiện nay, các mã trông giống như sau (thay đổi nội dung cho ngắn gọn):
class Processor {
BufferedReader br;
Processor(String fname) {
br = new BufferedReader(new FileReader("fname"));
}
void process() {
try {
String line;
while((line=br.readLine)!=null) {
...code for processing the line goes here...
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
Cảm ơn bạn đã dành thời gian.
Anh ấy phải là người đã tấn công Sony .... 700GB Holy crap ... –