API for simple File (line count) functions in Java

后端 未结 4 1112
爱一瞬间的悲伤
爱一瞬间的悲伤 2021-01-06 05:12

Hi : Given an arbitrary file (java), I want to count the lines.

This is easy enough, for example, using Apache\'s FileUtils.readLines(...) method...

Howeve

4条回答
  •  南方客
    南方客 (楼主)
    2021-01-06 06:05

    Here's a version that makes use of Apache Commons IO library. You can pass null for encoding to pick the platform default.

    import org.apache.commons.io.FileUtils;
    import org.apache.commons.io.LineIterator;
    
    public static long countLines(String filePath, String encoding)
    throws IOException {
        File file = new File(filePath);
        LineIterator lineIterator = FileUtils.lineIterator(file, encoding);
        long lines = 0;
        try {
            while ( lineIterator.hasNext() ) {
                lines++;
                lineIterator.nextLine();
            }
        } finally {
            LineIterator.closeQuietly( lineIterator );
        }
        return lines;
    }
    

提交回复
热议问题