欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

计算文件有多少行

程序员文章站 2022-03-26 21:07:09
...
private static final Logger logger = Logger.getLogger(FtpServer.class.getName());
private static int getLineNumber(String fileName)
    {
        //开始时间,用来日志记录
        long start = System.currentTimeMillis();

        //文件的行数
        int lineNum = 0;
        char[] buf = new char[ConstUtil.VALUE_8192];
        LineNumberReader lnr = null;

        try
        {
            //用来取文件行数
            lnr = new LineNumberReader(new InputStreamReader(new FileInputStream(fileName)));

            while (lnr.read(buf) != -1)
            {
                ;
            }

            lineNum = lnr.getLineNumber() + 1;
        }
        catch (FileNotFoundException ex)
        {
            logger.error(ex.getMessage(),ex);
        }
        catch (IOException ex)
        {
            logger.error(ex.getMessage(),ex);
        }
        finally
        {
            try
            {
                if (null != lnr)
                {
                    lnr.close();
                }
            }
            catch (IOException ex)
            {
                logger.error(ex.getMessage(),ex);
            }
        }

        //结束时间,log使用
        long end = System.currentTimeMillis();

        logger.info("Use Time: " + (end - start) + " Line Num: " + lineNum);

        return lineNum;
    }
public static void main(String[] args)
    {
        System.out.println("文件行数为:" + getLineNumber("d:/loadFile.java"));
    }