Java从指定行开始读取文件内容方式

 更新时间:2026年02月12日 09:15:02   作者:一直向上的太阳  
文章讨论了如何在Java中从指定行开始读取文件内容,并指出了一个常见的错误:代码中去掉了最后两行,作者分享了个人经验,并鼓励读者参考和支持

Java从指定行开始读取文件内容

从指定行开始读取文件

 /**
     * 从指定行开始读文件
     * @param txtPath 文件路径
     * @param lineNum 行号
     * @throws IOException
     */
    public static void readLineByNum(String txtPath,int lineNum) throws IOException {
        FileWriter writer;
        //文件总行数
        long count = Files.lines(Paths.get(txtPath)).count();
        StringBuffer sb = new StringBuffer();
        LineNumberReader lnr = new LineNumberReader(new FileReader(txtPath));
        String line = lnr.readLine();
        while (line!=null){
            if (lnr.getLineNumber() >= lineNum && lnr.getLineNumber()<=count-2 ){
                sb.append(line);
                sb.append("\r\n");
            }
            line = lnr.readLine();
        }
        writer = new FileWriter(txtPath,false);
        writer.write(sb.toString());
        writer.close();
        System.out.println(sb.toString());

    }
lnr.getLineNumber() <= count - 2

上面这个代码判断

我是去掉了最后两行,去掉此判断则读到文件最后一行

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java项目中classpath的理解

    java项目中classpath的理解

    这篇文章介绍了java项目中classpath的理解,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-12-12
  • Spring使用IOC与DI实现完全注解开发

    Spring使用IOC与DI实现完全注解开发

    IOC也是Spring的核心之一了,之前学的时候是采用xml配置文件的方式去实现的,后来其中也多少穿插了几个注解,但是没有说完全采用注解实现。那么这篇文章就和大家分享一下,全部采用注解来实现IOC + DI
    2022-09-09
  • SpringMVC整合SSM实现表现层数据封装详解

    SpringMVC整合SSM实现表现层数据封装详解

    这篇文章主要介绍了SpringMVC整合SSM实现表现层数据封装,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-10-10
  • java 图片加水印实例代码

    java 图片加水印实例代码

    java 图片加水印实例代码,需要的朋友可以参考一下
    2013-06-06
  • Eclipse中Debug时鼠标悬停不能查看变量值解决办法

    Eclipse中Debug时鼠标悬停不能查看变量值解决办法

    这篇文章主要介绍了Eclipse中Debug时鼠标悬停不能查看变量值解决办法,以及分享了一个简单补全代码的方法,还是比较不错的,需要的朋友可以参考下。
    2017-11-11
  • mybatis引用其他文件中的sql片段的实现

    mybatis引用其他文件中的sql片段的实现

    Mybatis中也是支持引用其他Mapper文件中的SQL片段的,本文就来介绍一下如何使用,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2024-03-03
  • MyBatis-Plus之@TableField的用法解读

    MyBatis-Plus之@TableField的用法解读

    这篇文章主要介绍了MyBatis-Plus之@TableField的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • 详解Java中的reactive stream协议

    详解Java中的reactive stream协议

    Stream大家应该都很熟悉了,java8中为所有的集合类都引入了Stream的概念。优雅的链式操作,流式处理逻辑,相信用过的人都会爱不释手。本文将详细介绍Java中的reactive stream协议。
    2021-06-06
  • springboot发布dubbo服务注册到nacos实现方式

    springboot发布dubbo服务注册到nacos实现方式

    这篇文章主要介绍了springboot发布dubbo服务注册到nacos实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • Java JDBC 反序列化实战案例

    Java JDBC 反序列化实战案例

    这篇文章主要介绍了Java JDBC 反序列化实战案例,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2025-11-11

最新评论