Insérer un saut de ligne à l'intérieur d'un paragraphe dans XWPFDocument

Je suis en train d'écrire des valeurs dans un modèle word à l'aide d'apache poi 3.8. J'ai remplacer des chaînes de caractères dans un fichier word (touches) avec les valeurs requises, par exemple un document word contient un paragraphe contenant la clé %Entry1%, et je veux le remplacer par "Entrée de texte ligne1 \nnew ligne". Toutes remplacé les clés et les valeurs sont stockées dans une Carte dans ma réalisation.

Map<String, String> replacedElementsMap;

Le code pour HWPFDocument est:

Range range = document.getRange();
for(Map.Entry<String, String> entry : replacedElementsMap.entrySet()) {
            range.replaceText(entry.getKey(), entry.getValue());
}

Ce code fonctionne très bien, j'ai juste à mettre les \n dans l'entrée de la chaîne pour un saut de ligne. Cependant je ne trouve pas de méthode similaire pour XWPFDocument. Mon code actuel pour XWPFDocument est:

List<XWPFParagraph> xwpfParagraphs = document.getParagraphs();
for(XWPFParagraph xwpfParagraph : xwpfParagraphs) {
            List<XWPFRun> xwpfRuns = xwpfParagraph.getRuns();
            for(XWPFRun xwpfRun : xwpfRuns) {
                String xwpfRunText = xwpfRun.getText(xwpfRun.getTextPosition());
                for(Map.Entry<String, String> entry : replacedElementsMap.entrySet()) {
                    if (xwpfRunText != null && xwpfRunText.contains(entry.getKey())) {
                        xwpfRunText = xwpfRunText.replaceAll(entry.getKey(), entry.getValue());
                    }
                }
                xwpfRun.setText(xwpfRunText, 0);
            }
        }

Maintenant le "\n"-chaîne n'a pas de conséquence dans le transport de retour, et si j'utilise xwpfRun.addCarriageReturn(); je viens d'obtenir un saut de ligne après le paragraphe. Comment dois-je créer de nouvelles lignes dans xwpf correctement?

Si vous ajoutez un saut de ligne dans un paragraphe dans le Bureau, puis regarder le XML résultant, ne fait que proposer une idée de ce qui est nécessaire?
XML ne contient que le saut de ligne, mais je voulais une nouvelle pause après chaque saut de ligne symbole, de sorte que dans la fin, j'ai dû créer de nouveaux paragrpahs manuellement.

OriginalL'auteur Vladimir Beletskiy | 2013-02-12