你知道,如果是有插入一個段落fullfilled文件(XWPFDocument)內的第(XWPFParagraph)的方式?在XWPFDocument的任何位置插入一個XWPFParagraph
有一種方法可以將文檔中已有的段落「改變」爲另一段落(XWPFDocument.setParagraph()),但我不知道如何將新段落插入文檔中的特定位置,而不是最後用XWPFDocument.createParagraph()。
你知道,如果是有插入一個段落fullfilled文件(XWPFDocument)內的第(XWPFParagraph)的方式?在XWPFDocument的任何位置插入一個XWPFParagraph
有一種方法可以將文檔中已有的段落「改變」爲另一段落(XWPFDocument.setParagraph()),但我不知道如何將新段落插入文檔中的特定位置,而不是最後用XWPFDocument.createParagraph()。
我已經找到了解決辦法。 XWPFDocument有一個醜陋的方法insertNewParagraph(org.apache.xmlbeans.XmlCursor cursor)。正如你所看到的,這個方法從xmlbeans庫中傳遞了一個XmlCursor。我們可以這樣做:
XmlCursor cursor = par.getCTP().newCursor();
XWPFParagraph new_par = doc.insertNewParagraph(cursor);
new_par.createRun().setText("Stupid text");
Par是XWPFDocument文檔中的XWPFParagraph。插入的新段落(此片段中的new_par)將插入到XmlCursor指向的XmlObject之前。
希望這可以幫助別人。
我花了一些時間王氏這個問題了。我有與上面評論中提到的相同的問題。什麼工作對我來說是這樣的:
尋找合適的段落做插入document.getParagraphsIterator()
後,我不得不使用此代碼
XmlCursor cur = para.getCTP().newCursor();
cur.toNextSibling();
能夠做到doc.insertNewParagraph(cur)
。
據我瞭解我的下一個故障是嘗試在光標的位置插入幾個段落。爲了完成這項工作,我必須在插入後添加cursor.toNextToken();
。
我試過,但返回的段落'insertNewParagraph'總是空。 –
運行代碼時,Java Runtime Environment檢測到一個致命錯誤。仍在調試,任何想法?沒有其他信息說明爲什麼會出現此錯誤 –