2010-07-09 3 views
4

문서의 모든 단락을 반복하여 텍스트와 모든 것을 얻을 수 있었고 처음부터 문서를 만드는 방법을 읽고 이해했습니다. 단락의 텍스트를 업데이트하고 바꿀 수있는 방법은 무엇입니까? 나는 단락에서 createRun을 할 수는 있지만, 단지 그 안에 새로운 텍스트 조각을 만들 것입니다.Apache POI를 사용하여 XWPFParagraph의 텍스트 업데이트

... 
FileInputStream fis = new FileInputStream("Muu.docx"); 
XWPFDocument myDoc = new XWPFDocument(fis); 
XWPFParagraph[] myParas = myDoc.getParagraphs(); 
... 

내 이론은 내가) 변경하거나 문단을 삭제하고 다시 추가 할 단락의 기존의 "실행"에서 얻을 필요하지만 난 그렇게 할 수있는 방법을 찾을 수 있다는 것입니다.

답변

11

XWPFParagraph의 텍스트를 직접 변경할 수 없습니다. XWPFParagraph는 하나 이상의 XWPFRun 인스턴스로 구성됩니다. 이것들은 텍스트를 설정하는 방법을 제공합니다.

텍스트를 변경하려면 코드가되고 싶은 무언가와 같은 : 당신은 단지 하나 개의 텍스트 실행 (첫 번째)가 보장되며, 모든 텍스트로 대체합니다
public void changeText(XWPFParagraph p, String newText) { 
    List<XWPFRun> runs = p.getRuns(); 
    for(int i = runs.size() - 1; i > 0; i--) { 
     p.removeRun(i); 
    } 
    XWPFRun run = runs.get(0); 
    run.setText(newText, 0); 
} 

무엇 제공됩니다.

+0

감사합니다. 그것을 밖으로 시도하고 다시보고합니다. –

관련 문제