You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@poi.apache.org by bu...@apache.org on 2017/08/16 05:43:53 UTC
[Bug 61421]
org.apache.poi.openxml4j.exceptions.OpenXML4JRuntimeException: Rule M2.4
exception
https://bz.apache.org/bugzilla/show_bug.cgi?id=61421
Alex <ga...@gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
OS| |All
--- Comment #1 from Alex <ga...@gmail.com> ---
Code that caused the drop
XWPFDocument docx = new XWPFDocument(new FileInputStream("D:\\curs.docx"));
ArrayList<Segment> topic = new ArrayList<>();
int i = 0;
for(XWPFParagraph paragraph : docx.getParagraphs()){
byte sid = paragraph.getStyleID() != null ? (byte)
paragraph.getStyleID().charAt(0) : 0;
if (sid >= 49 && sid <=52 ){
if (paragraph.getText().length() > 0) {
System.out.println(paragraph.getStyleID() + ":" +
paragraph.getText());
Segment segment = new Segment(paragraph.getText(),
Integer.valueOf(paragraph.getStyleID().charAt(0)));
segment.doc = new XWPFDocument(docx.getPackage());
segment.from = i;
if(topic.size() > 0){
topic.get(topic.size() - 1).to = i - 1;
}
topic.add(segment);
}
}
i++;
}
for(Segment segment : topic){
i = 0;
for(XWPFParagraph paragraph : docx.getParagraphs()) {
if(!(i >= segment.from && i <=segment.to)){
int pPos = segment.doc.getPosOfParagraph(paragraph);
segment.doc.removeBodyElement(pPos);
}
i++;
}
segment.doc.write(new FileOutputStream(new File("D:\\test\\" +
segment.title + ".docx")));
segment.doc.close();
}
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org