Pergunta

Embora não descubra a linha em um arquivo, ele exibe mais número de linhas.

Por exemplo, no meu arquivo, com apenas 26 linha no documento do Word. Mas, enquanto conta usando o programa Java, ele exibe 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);

O código acima, como é calcular o não. da linha....?

Foi útil?

Solução

Se for o documento do Microsoft Word, eles são arquivos binários, você não poderá fazer dessa maneira.

Você precisa encontrar API apropriada para arquivos do Microsoft Word.

Outras dicas

Você está tentando tratar um documento do Word como se fosse um arquivo de texto simples (*).

Um documento do Word, no entanto, é um arquivo binário com um formato proprietário que você precisa interpretar corretamente para extrair as informações contidas nele.

Existem bibliotecas por aí que lidam com esses arquivos, por exemplo Apache poi.

Se você deseja apenas fazer isso para experimentação e aprendizado, pode ser mais fácil ficar com arquivos de texto simples (conforme produzido pelo bloco de notas, por exemplo).

(*) ainda que Não existe texto simples.

Seu problema é que você está olhando para um arquivo do documento - que não é mantido em texto simples. Para encontrar o número de linhas em um arquivo do Microsoft Word, você terá que usar uma biblioteca dedicada ...

O formato de arquivo está disponível em www.wotsit.org, mas duvido que isso por si só te ajude ...

Você também pode usar a API Open Office para acessar o conteúdo dos documentos do escritório.Perguntas frequentes no OpenOffice.org API

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top