In vari casi, è necessario dividere un documento MS Word in più documenti. Ad esempio, potrebbe essere necessario creare un documento separato per ogni pagina, sezione o raccolta di pagine in un documento di Word. Per automatizzare la divisione dei documenti, questo articolo spiega come dividere MS Word DOCX a livello di codice utilizzando Java. Le sezioni seguenti forniscono un’esercitazione dettagliata ed esempi di codice dei criteri di suddivisione sopra menzionati.
- API Java per dividere i documenti di Word
- Dividi una parola DOCX/DOC usando Java
- Usa Intervallo di pagine per dividere il documento di Word
- Dividi il documento di Word per sezioni
- Ottieni la licenza API gratuita
API Java per dividere Word DOCX
Aspose.Words for Java è un’API di manipolazione dei documenti potente e ricca di funzionalità che ti consente di creare ed elaborare documenti MS Word. Oltre alle funzionalità di automazione di Word di base e avanzate, l’API consente anche di dividere un documento di Word in più documenti. Puoi scaricare l’API o installarla all’interno della tua applicazione basata su Maven utilizzando le seguenti configurazioni.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>21.1</version>
<classifier>jdk17</classifier>
</dependency>
Separatore di documenti di Word - Classe di supporto
Prima di iniziare a dividere i documenti, dovresti aggiungere la seguente classe helper al tuo progetto che implementa uno splitter di documenti Java basato su Aspose.Words per Java. Una volta aggiunta la classe, puoi procedere alla suddivisione dei documenti utilizzando gli esempi di codice forniti nelle sezioni seguenti.
Dividi un Word DOCX usando Java
Prima di tutto, diamo un’occhiata a come dividere un documento MS Word per pagina. In questo caso, ogni pagina del documento di origine verrà convertita in un documento Word separato. Di seguito sono riportati i passaggi per dividere le pagine di un documento di Word.
- Carica il documento di Word usando la classe Document.
- Crea un oggetto di PageSplitter e inizializzalo con l’oggetto Document.
- Scorri le pagine del documento.
- Usa il metodo PageSplitter.getDocumentOfPage(Int pageIndex) per recuperare ogni pagina in un oggetto Document.
- Salvare il documento utilizzando il metodo Document.save(String).
L’esempio di codice seguente mostra come dividere un documento di Word utilizzando Java.
// Per esempi completi e file di dati, vai a https://github.com/aspose-words/Aspose.Words-for-Java
// Apri un documento di Word
Document doc = new Document("Word.docx");
// Dividi i nodi nel documento in pagine separate
DocumentPageSplitter splitter = new DocumentPageSplitter(doc);
// Salva ogni pagina come un documento separato
for (int page = 1; page <= doc.getPageCount(); page++)
{
Document pageDoc = splitter.getDocumentOfPage(page);
pageDoc.save("SplitDocumentByPage_" + page + ".docx");
}
Usa Intervallo di pagine per dividere Word DOCX in Java
Puoi anche definire un intervallo di pagine che desideri dividere dal documento Word di origine. Di seguito sono riportati i passaggi per eseguire questa operazione.
- Carica il documento di Word usando la classe Document.
- Crea un oggetto di PageSplitter e inizializzalo con l’oggetto Document.
- Utilizzare il metodo PageSplitter.getDocumentOfPageRange(Int, Int) per recuperare la raccolta di pagine in un oggetto Document.
- Salvare il documento utilizzando il metodo Document.save(String).
L’esempio di codice seguente mostra come dividere un documento di Word per un intervallo di pagine utilizzando Java.
// Per esempi completi e file di dati, vai a https://github.com/aspose-words/Aspose.Words-for-Java
// Apri un documento di Word
Document doc = new Document("Word.docx");
// Dividi i nodi nel documento in pagine separate
DocumentPageSplitter splitter = new DocumentPageSplitter(doc);
// Ottieni parte del documento
Document pageDoc = splitter.getDocumentOfPageRange(3,6);
pageDoc.save("SplitDocumentByPageRange.docx");
Dividi un documento di Word per sezioni usando Java
Aspose.Words per Java consente anche di dividere un documento di Word per interruzioni di sezione. Di seguito sono riportati i passaggi per eseguire questa operazione.
- Carica il documento di Word usando la classe Document.
- Scorri ogni sezione del documento usando il metodo Document.getSections().
- Clonare la sezione in un oggetto Section utilizzando il metodo Document.getSections().get(index).deepClone().
- Crea un nuovo documento e aggiungi la sezione clonata al documento usando il metodo Document.getSections().add(Section).
- Salvare il documento utilizzando il metodo Document.save(String).
L’esempio di codice seguente mostra come dividere un documento di Word per sezioni usando Java.
// Carica un documento Word DOCX
Document doc = new Document("word.docx");
for (int i = 0; i < doc.getSections().getCount(); i++) {
// Dividi un documento in parti più piccole, in questo caso divise per sezione
Section section = doc.getSections().get(i).deepClone();
// Crea un nuovo documento
Document newDoc = new Document();
newDoc.getSections().clear();
// Aggiungi sezione
Section newSection = (Section) newDoc.importNode(section, true);
newDoc.getSections().add(newSection);
// Salva ogni sezione come documento separato
newDoc.save("splitted_" + i + ".docx");
}
Ottieni una licenza API gratuita
Puoi ottenere una licenza temporanea gratuita per provare l’API senza limitazioni di valutazione.
Conclusione
In questo articolo, hai imparato come dividere MS Word DOCX/DOC usando Java. La guida passo passo e gli esempi di codice hanno mostrato come dividere un documento di Word per sezioni, pagine o un intervallo di pagine. Puoi esplorare di più sull’API di Java Word utilizzando la documentazione.