E ae galera, estou precisando de ajuda…
Eu estou montando uma ferramenta que leia o conteúdo de um arquivo .DOC.
Já tentei convertei ele para RTF e o que aconteceu foi o seguinte:
*Antes de mais nada, minha ferramenta, você só indica o caminho num textfield auxiliado por um button que tem o JFileChooser e quando você aperta um botão, ela gera um outro arquivo em outro lugar
** já tentei também editar na tela mas acontece a mesma coisa
JTextPane editor = new JTextPane();
// Tentei com JEditorPane também e o resultado foi o mesmo
StyleContext sc = new StyleContext();
sc.getStyle( StyleContext.DEFAULT_STYLE );
DefaultStyledDocument doc = new DefaultStyledDocument( sc );
try {
// Arquivo DOC
editor.read( new FileInputStream( "C:\\<caminho>\\teste.doc" ), doc );
// Arquivo RTF
editor.read( new FileInputStream( "C:\\<caminho>\\teste.rtf" ), doc );
System.out.println( editor.getText() );
}
catch ( IOException ex ) {
System.out.println( "Erro na leitura do arquivo" + ex.getMessage() );
}
Já tentei gerar um Document, também usei o RTFEditorKit, cheguei nos mesmos resultados, o problema deve estar com o HTML:
Arquivo DOC - O texto aparece normalmente, mas quando tem negrito, itálico, sublinha ou tabela, ele “desformata” tudo, aparecendo quadrados, símbolos estranhos, etc…
Arquivo RTF - O texto fica cheio de contra-barra com tags muito estranhas, por exemplo: \pard\qc\par \tab
e os acentos não aparecem
como minha ferramenta varre o texto e nele tem tabela, ele não encontra as tags (\n, \t, etc) por causa dos quadradros e símbolos no DOC e as várias tags (\par) no RTF ( teria que fazer um tratamento necessario para cada uma ), resumindo, queria abrir o documento como ele é no MWord ou WordPad, não preciso das tags HTML da tabela em si, apenas da tabulação ‘\t’ e quebra de linha ‘\n’, etc.
Será que a classe do pacote: org.apache.poi.hwpf.extractor.WordExtractor resolve meu problema?
Se alguém quiser e pude tentar me ajudar, desde já agradeço, qualquer coisa eu explico melhor o que eu preciso!