使用java查找文件中的行数有困难吗?

使用java查找文件中的行数有困难吗?,java,line-numbers,Java,Line Numbers,“查找文件中的行数”时,会显示更多的行数 例如,在我的文件中,word文档中只有26行。但当使用java程序计数时,它显示为118 File f=new File("C:\\Users\\os05\\Desktop\\Venkatesan(13-02-10).doc"); FileReader fr = new FileReader(f); LineNumberReader ln = new LineNumberReader(fr); int count =

“查找文件中的行数”时,会显示更多的行数

例如,在我的文件中,word文档中只有26行。但当使用java程序计数时,它显示为118

    File f=new File("C:\\Users\\os05\\Desktop\\Venkatesan(13-02-10).doc");

    FileReader fr = new FileReader(f);

    LineNumberReader ln = new LineNumberReader(fr);

    int count = 0;

    while (ln.readLine() != null)
    {

      count++;
    }
    System.out.println("No of lines:"+count);

上面的代码,如何计算行数…?

如果是Microsoft Word文档,它们是二进制文件,您不能这样做


您需要为microsoft word文件找到合适的api。

您的问题是您正在查看的是一个文档文件,它不是以纯文本形式保存的。要查找microsoft word文件中的行数,必须使用专用库


该文件格式可在www.wotsit.org上获得,但我怀疑仅此一项就能帮助您

您试图将Word文档视为纯文本文件(*)

但是,Word文档是一个二进制文件,具有专有格式,您需要正确解释该文件以提取其中包含的信息

例如,有一些库可以处理这样的文件

如果你只是为了实验和学习而这样做,那么只使用简单的文本文件(例如记事本产生的文本文件)可能会更容易


(*)即使。

您也可以使用open office api访问office文档的内容。

word文档是Microsoft word文档吗?是的,是Microsoft word文档。您应该接受一些回答,以便在记事本中打开word文档。您的Java代码必须通读它。可怜的小女孩。:)尝试阅读您想要执行的类的javadoc。然后您会看到FileReader不是一个通用的文档中心阅读器,只是一个简单的文件字节到字符串转换器(使用您之前设置的一些编码),LineNumberReader是一个识别行尾字符的阅读器。@标记0/5不是什么大问题,特别是在5天内。