Tôi muốn sao chép 10MB cuối cùng của tệp có thể lớn vào tệp khác. Lý tưởng nhất là tôi sẽ sử dụng FileInputStream, skip() và sau đó read(). Tuy nhiên tôi không chắc chắn nếu hiệu suất của skip() sẽ là xấu. Là bỏ qua() thường được thực hiện bằng cách sử dụng một tập tin tìm kiếm bên dưới hoặc nó thực sự đọc và loại bỏ dữ liệu?FileInputStream.skip() có tìm kiếm không?
Tôi biết về RandomAccessFile nhưng tôi quan tâm đến việc liệu tôi có thể sử dụng FileInputStream thay cho điều đó (RandomAccessFile gây khó chịu vì API không chuẩn).
Tôi chỉ quên nếu tôi thử nghiệm này trên JVM oracle hoặc android, nhưng FileInputStream.skip() kiểm tra các giá trị âm. –