diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/io/file/Tailer.java b/hutool-core/src/main/java/org/dromara/hutool/core/io/file/Tailer.java index 2dc91a8fc..fb1ddf084 100644 --- a/hutool-core/src/main/java/org/dromara/hutool/core/io/file/Tailer.java +++ b/hutool-core/src/main/java/org/dromara/hutool/core/io/file/Tailer.java @@ -80,7 +80,7 @@ public class Tailer implements Serializable { * * @param file 文件 * @param lineHandler 行处理器 - * @param initReadLine 启动时预读取的行数 + * @param initReadLine 启动时预读取的行数,1表示一行 */ public Tailer(final File file, final SerConsumer lineHandler, final int initReadLine) { this(file, CharsetUtil.UTF_8, lineHandler, initReadLine, DateUnit.SECOND.getMillis()); @@ -103,7 +103,7 @@ public class Tailer implements Serializable { * @param file 文件 * @param charset 编码 * @param lineHandler 行处理器 - * @param initReadLine 启动时预读取的行数 + * @param initReadLine 启动时预读取的行数,1表示一行 * @param period 检查间隔 */ public Tailer(final File file, final Charset charset, final SerConsumer lineHandler, final int initReadLine, final long period) { @@ -211,7 +211,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; }