Сложность при поиске нет строк в файле с использованием Java? - PullRequest
0 голосов
/ 25 февраля 2010

Хотя в файле нет строки, в ней отображается большее количество строк.

например, в моем файле только 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);

Приведенный выше код, как рассчитать нет. линии ....?

Ответы [ 4 ]

10 голосов
/ 25 февраля 2010

Вы пытаетесь обработать документ Word, как если бы он был простым текстовым файлом (*).

Однако документ Word - это двоичный файл с собственным форматом, который необходимо правильно интерпретировать для извлечения содержащейся в нем информации.

Существуют библиотеки, которые обрабатывают такие файлы, например, Apache POI .

Если вы просто хотите сделать это для экспериментов и обучения, то может быть проще придерживаться простых текстовых файлов (как, например, в Notepad).

(*), даже если нет такой вещи, как простой текст .

3 голосов
/ 25 февраля 2010

Если это документ Microsoft Word, это двоичные файлы, вы не могли бы это сделать.

Вам необходимо найти соответствующий API для файлов Microsoft Word.

2 голосов
/ 25 февраля 2010

Ваша проблема в том, что вы просматриваете файл документа, который не содержится в простом тексте. Чтобы узнать количество строк в файле Microsoft Word, вам нужно использовать специальную библиотеку ...

Формат файла доступен на www.wotsit.org, но я сомневаюсь, что это поможет вам ...

1 голос
/ 25 февраля 2010

Вы также можете использовать API Open Office для доступа к содержимому документов Office. FAQ по OpenOffice.org API

...