`

计算文件有多少行

阅读更多
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"));
    }
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics