FileStream.Read() được định nghĩa là:FileStream, đọc đoạn dữ liệu từ tệp lớn. Tập tin lớn hơn int. Làm thế nào để thiết lập bù đắp?
public override int Read(
byte[] array,
int offset,
int count
)
Làm thế nào tôi có thể đọc một số byte từ một bù đắp lớn hơn int.MaxValue?
Hãy nói rằng tôi có một tập tin rất lớn và tôi muốn đọc 100MB bắt đầu từ vị trí 3147483648.
Làm thế nào tôi có thể làm điều đó?
thấy Nhưng điều gì sẽ xảy ra khi bù đắp đi trên int.MaxValue? Làm thế nào bạn sẽ xử lý điều đó? – tayl0rs
@ tayl0rs kể từ khi kích thước mảng tối đa cho bộ đệm sẽ được vượt quá tại thời điểm đó, nó là một mối quan tâm tranh luận. Ngay cả khi hỗ trợ mảng rất lớn được bật, bạn không thể vượt quá kích thước đó trong bất kỳ thứ nguyên nào; xem "nhận xét" ở đây: https://msdn.microsoft.com/en-us/library/hh285054(v=vs.110).aspx (và lưu ý: bù đắp liên quan đến mảng, chứ không phải luồng) –