zoukankan      html  css  js  c++  java
  • java分页读取文件

     1 /**
     2      * 
     3      * @param fileName 文件全路径
     4      * @param pageNo  页数
     5      * @param pageSize  每页的条数
     6      * @return
     7      */
     8     List<String> getLines(String fileName,int pageNo,int pageSize){
     9         File file = new File(fileName);
    10         BufferedReader reader = null;
    11         List<String> lines = new ArrayList<String>();
    12         try {
    13             int startRow = (pageNo - 1) * pageSize + 1;  //计算开始行数
    14             int endRow = pageNo * pageSize; //计算结束行数
    15             reader = new BufferedReader(new FileReader(file));
    16             LineNumberReader lineNumberReader = new LineNumberReader(new FileReader(file));
    17             lineNumberReader.skip(Long.MAX_VALUE);
    18             int lineNumber = lineNumberReader.getLineNumber() + 1;   //获取文件里面的总行数
    19             if(endRow >= lineNumber){
    20                 endRow = lineNumber;
    21             }
    22             String tempString = "";
    23             int line = 0;
    24             // 一次读入一行,直到读入null为文件结束
    25             while (tempString != null) {
    26                 line++;
    27                 tempString = reader.readLine();
    28                  if(line >= startRow && line <= endRow) { 
    29                      lines.add(tempString);
    30                  }
    31             }
    32             reader.close();
    33             return lines;
    34         } catch (IOException e) {
    35             e.printStackTrace();
    36         } finally {
    37             if (reader != null) {
    38                 try {
    39                     reader.close();
    40                 } catch (IOException e) {
    41                     e.printStackTrace();
    42                 }
    43             }
    44         }
    45         return null;
    46     }
  • 相关阅读:
    Redis环境搭建(整合SprinigBoot一键切换集群和单机环境)
    Docker + SpringBoot2.0快速构建镜像
    kafka实现分布式事务
    【本地事物】
    【数据结构之二叉树】
    变量
    python 介绍
    编程语言的区别
    路飞学城python教程 第二章练习题
    windows下nginx配合ffmpeg推送视频流
  • 原文地址:https://www.cnblogs.com/lhq1996/p/13677516.html
Copyright © 2011-2022 走看看