程式碼:獲取切片起始讀取偏移量
切片開始讀取位置定位
由程式碼可知:如果當前讀取器讀取的是第一個切片那麼從頭開始讀,否則,從對應的block的第一個換行符之後開始讀取解析為什麼第一個切片的讀取器會把第二個切片開頭的555給讀取了呢?那第二個讀取器會重複讀取555嗎?除了最後一個切片,之前的每個切片都會多讀取下一個切片(block)的第一行,也就是會讀取第二個切片開頭的第一個換行符之前的內容,除了第一個切片是從切片(block)的起始位置(也就是整個檔案的最開始)讀取,其他的切片的內容是從切片(block)第一個換行符\r\n之後的位置開始讀取(大家可以細細品味),因此第一個切片的讀取器會把第二個切片最開始的555給讀取了跨行第一個blcok的最後行內容跨行了,如圖跨行
最新評論