修复Tailer指定初始读取行数的计算错误问题

This commit is contained in:
Looly 2024-06-21 20:32:29 +08:00
parent 6c086ff8b6
commit 313cadbdfa
2 changed files with 6 additions and 3 deletions

View File

@ -23,6 +23,7 @@
* 【core 】 修复PathMover.moveContent问题issue#IA5Q8D@Gitee
* 【db 】 修复PooledConnection可能的数据库驱动未找到问题issue#IA6EUQ@Gitee
* 【http 】 修复Mac下的微信浏览器被识别为移动端问题issue#IA74K2@Gitee
* 【core 】 修复Tailer指定初始读取行数的计算错误问题issue#IA77ML@Gitee
-------------------------------------------------------------------------------------------------------------
# 5.8.28(2024-05-29)

View File

@ -68,7 +68,7 @@ public class Tailer implements Serializable {
*
* @param file 文件
* @param lineHandler 行处理器
* @param initReadLine 启动时预读取的行数
* @param initReadLine 启动时预读取的行数1表示一行
*/
public Tailer(File file, LineHandler lineHandler, int initReadLine) {
this(file, CharsetUtil.CHARSET_UTF_8, lineHandler, initReadLine, DateUnit.SECOND.getMillis());
@ -91,7 +91,7 @@ public class Tailer implements Serializable {
* @param file 文件
* @param charset 编码
* @param lineHandler 行处理器
* @param initReadLine 启动时预读取的行数
* @param initReadLine 启动时预读取的行数1表示一行
* @param period 检查间隔
*/
public Tailer(File file, Charset charset, LineHandler lineHandler, int initReadLine, long period) {
@ -197,7 +197,9 @@ public class Tailer implements Serializable {
int currentLine = 0;
while (nextEnd > start) {
//
if (currentLine > initReadLine) {
if (currentLine >= initReadLine) {
// issue#IA77ML initReadLine是行数从1开始currentLine是行号从0开始
// 因此行号0表示一行所以currentLine == initReadLine表示读取完毕
break;
}