void () { int i = myOffset + myLength + myLineSeparatorLength; final int textLength = myText.length(); if (i >= textLength){ atEnd = true; return; } while(i < textLength){ char c = myText.charAt(i); if (c == '\r' || c == '\n') break; i++; } myOffset += myLength + myLineSeparatorLength; myLength = i - myOffset; myLineSeparatorLength = 0; if (i == textLength) return; char first = myText.charAt(i); if (first == '\r' || first == '\n') { myLineSeparatorLength = 1; } i++; if (i == textLength) return; char second = myText.charAt(i); if (first == '\r' && second == '\n') { myLineSeparatorLength = 2; } }