Fórum Juntar (Merging) dois arquivos do word (.doc) #421475

13/08/2012

0

Bom dia.

Estou com um problema sério. Preciso unificar (merging) dois arquivos do word (.doc) e manter a formatação do mesmo. Já tentei com a api apache poi. Mas meu texto está perdendo a formatação.

Tem alguma outra api que eu possa usar?

obrigado a todos que ajudarem.
Marco Christovam

Marco Christovam

Responder

Posts

13/08/2012

Davi Costa

Vc tem dois arquivos com formatações diferentes?
Vc primeiro tem que estabelecer qual deve ser o prioritário.
E adicionar apenas o texto do outro arquivo e adicionar para o que já está formatado

att Davi
Responder

Gostei + 0

13/08/2012

Deivison Melo

Será que esse tópico não te dará uma luz...

http://www.guj.com.br/java/76136-juntar-arquivos
Responder

Gostei + 0

13/08/2012

Deivison Melo

Verifica tb essa video aula...

http://www.google.com.br/url?sa=t&rct=j&q=merge+arquivos+word+java&source=web&cd=6&ved=0CGIQtwIwBQ&url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3Dnq7SHJO3dOw&ei=kPwoUJrbMsiC0QGTyYDADg&usg=AFQjCNEJU_fysdq5wVvyL9__71qR1jWgxA
Responder

Gostei + 0

13/08/2012

Marco Christovam

Deivison,

referente a api aspose.word qual a licença dela?

O que eu preciso fazer é assim, por exemplo:

Tenho 5 clausulas no arquivo c1.doc .
e mais 3 clausulas no arquivo c2.doc .

O arquivo de saido teria que ser as 8 clausulas, enumeradas e formatadas de acordo com o primeiro arquivo.

att,
Responder

Gostei + 0

13/08/2012

Deivison Melo

Não cheguei a pesquisar nada sobre a licença dessa api...

Irei verificar e te darei um retorno!

E se existe mais alguma outra solução que possa atendê-lo!
Responder

Gostei + 0

13/08/2012

Marco Christovam

Deivison, obrigado pela ajuda.

Estou batalhando para conseguir o resultado que espero.
Caso eu consiga, postarei a solução por aqui.

att,
Responder

Gostei + 0

13/08/2012

Deivison Melo

Encontrei esse exemplo na net (apesar de ser em pdf é bem interessante), verifique se ele te atende:

import java.io.FileOutputStream;
import java.io.IOException;
import com.lowagie.text.pdf.PdfCopyFields;
import com.lowagie.text.pdf.PdfReader;
public class Concatenate2PDF {
public static void main(String[] args)throws Exception {
System.out.println(Concatenate Two PDF);
PdfReader reader1 = new PdfReader(1PDF.pdf);
PdfReader reader2 = new PdfReader(2PDF.pdf);
PdfCopyFields copy = new PdfCopyFields(new FileOutputStream(concatenatedPDF.pdf));
copy.addDocument(reader1);
copy.addDocument(reader2);
copy.close();
}
}
Responder

Gostei + 0

13/08/2012

Marco Christovam

Deivison,

este caso não resolve o problema para arquivo .doc .
Acho que será mais fácil com a api apache poi.
Responder

Gostei + 0

13/08/2012

Marco Christovam

com o código a seguir, eu consigo copiar de um arquivo para outro, porém, perde toda a formatação, e a as imagens, caso o arquivo tenha.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// POI apparently cant create a document from scratch, 
            // so we need an existing empty dummy document 
            HWPFDocument doc = new HWPFDocument(new FileInputStream(D:\\tmp.doc)); 
            Range range = doc.getRange(); 
   
               
            //I can get the entire Document and insert it in the tmp.doc 
            //However any formatting in my word document is lost. 
            HWPFDocument doc2 = new HWPFDocument(new FileInputStream(D:\\doc1.doc)); 
            Range range2 = doc2.getRange(); 
            range.insertAfter(range2.text()); 
   
            //I can get the information (text only) for each character run/paragraph or section. 
            //Again any formatting in my word document is lost. 
            HWPFDocument doc3 = new HWPFDocument(new FileInputStream(D:\\doc2.doc)); 
            Range range3 = doc3.getRange(); 
            for(int i=0;irange3.numCharacterRuns();i++){ 
                CharacterRun run3 = range3.getCharacterRun(i); 
                range.insertAfter(run3.text()); 
            
               
            OutputStream out = new FileOutputStream(D:\\result.doc); 
            doc.write(out); 
            out.flush(); 
            out.close();
Responder

Gostei + 0

14/08/2012

Marco Christovam

e aí pessoal, nenhuma dica, pra eu continuar?

abraço
Responder

Gostei + 0

01/09/2014

Glaucia Pomiglio

Marco Antonio Christovam Junior , tudo bem ?

Conseguiu resolver seu problema? Estou na mesma situação e não estou achando uma solução.

Agradeço muito se puder responder.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar