Word-Dokumente, die durch Scannen oder Konvertieren erstellt wurden, können eine sehr große Anzahl von Leerzeilen aufweisen. Sie können die Formatierung der Dokumente stören und das Erscheinungsbild der Dokumente beeinträchtigen, so dass die Dokumente schwer lesbar sind. Um die Lesbarkeit und Ästhetik der Dokumente zu verbessern, müssen diese Leerzeilen daher entfernt werden. Dieser Artikel zeigt Ihnen, wie Sie mit dem kostenlosen Free Spire.Doc for Java schnell und einfach Leerzeilen aus einem Word-Dokument entfernen können.
Hinzufügen von Abhängigkeiten
Die Methode in diesem Artikel erfordert eine kostenlose Java-API zur Verarbeitung von Word-Dokumenten, Free Spire.Doc for Java. Diese API kann von der offiziellen Website heruntergeladen oder mit Maven in Ihrem Projekt eingesetzt werden. Der Maven-Code lautet wie folgt:
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.doc.free</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
Alle Leerzeilen in einem Word-Dokument entfernen
Durch einfaches Durchlaufen der Abschnitte eines Word-Dokuments, durchlaufen der untergeordneten Objekte jedes Abschnitts und Löschen der untergeordneten Objekte, die leere Absätze sind, können alle Leerzeilen im Dokument gelöscht werden. Leerzeilen, die Leerzeichen enthalten, werden ebenfalls gelöscht. Die genaue Vorgehensweise ist wie folgt.
- Erstellen Sie ein Objekt der Klasse Document.
- Laden Sie ein Word-Dokument mit der Methode Document.loadFromFile().
- Führen Sie eine Schleife durch jeden Abschnitt und durch die untergeordneten Objekte jedes Abschnitts.
- Ermitteln Sie, ob das untergeordnete Objekt ein Absatz ist, und wenn ja, erstellen Sie ein String-Objekt mit dem Text des Absatzes.
- Ermitteln Sie, ob das String-Objekt null ist, und wenn null, löschen Sie den entsprechenden Absatz.
- Speichert das Dokument mit der Methode Document.saveToFile().
Ein Code-Beispiel
import com.spire.doc.*;
import com.spire.doc.documents.*;
public class removeEmptyLines {
public static void main(String[] args) {
//Erstellen Sie ein Objekt der Klasse Document
Document document = new Document();
//Laden Sie ein Word-Dokument
document.loadFromFile("サンプル.docx");
//Schleife durch alle Abschnitte des Dokuments
for (Section section : (Iterable<? extends Section>) document.getSections()) {
//Schleife durch alle untergeordneten Objekte in jedem Abschnitt
for (int i = 0; i < section.getBody().getChildObjects().getCount(); i++) {
//Feststellen, ob jedes untergeordnete Objekt ein Absatz ist
if ((section.getBody().getChildObjects().get(i).getDocumentObjectType().equals(DocumentObjectType.Paragraph) )) {
//Erstellen Sie ein String-Objekt mit dem Text jedes Absatzobjekts
String s= ((Paragraph)(section.getBody().getChildObjects().get(i))).getText().trim();
//Ermittelt, ob ein String-Objekt NULL ist.
if (s.isEmpty()) {
//Leere Absätze löschen
section.getBody().getChildObjects().remove(section.getBody().getChildObjects().get(i));
i--;
}
}
}
}
//Speichern Sie das Dokument
document.saveToFile("Leere Zeilen löschen.docx", FileFormat.Docx_2019);
}
}
Dieser Artikel zeigt Ihnen, wie Sie Leerzeilen mit dem kostenlosen Spire.Doc für Java entfernen können. Wenn Sie Absätze ausblenden möchten, anstatt sie zu löschen, lesen Sie "Wie man Absätze ausblendet".
Sie können auch das Spire.Doc for Java-Tutorial lesen, um weitere Informationen zu erhalten und mit anderen Benutzern im Spire.Doc-Forum zu diskutieren.
Top comments (0)