您好,我需要替换单词$ {tabla}中的一个参数来列出这是我的代码:
XWPFDocument document = new XWPFDocument(new FileInputStream(getServletContext().getRealPath("/") + myFilePath));
for (XWPFParagraph p : document.getParagraphs()) {
List<XWPFRun> runs = p.getRuns();
if (runs != null) {
for (XWPFRun r : runs) {
String text = r.getText(0);
if (text != null && text.contains("${texto}")) {
text = text.replace("${texto}", "loren ipsum");
r.setText(text, 0);
}
if (text != null && text.contains("${encargado}")) {
text = text.replace("${encargado}", "loren ipsum");
r.setText(text, 0);
}
if (text != null && text.contains("${fecha}")) {
text = text.replace("${fecha}", "loren ipsum");
r.setText(text, 0);
}
if (text != null && text.contains("${tabla}")) {
XmlCursor cursor = p.getCTP().newCursor();
XWPFTable table = document.insertNewTbl(cursor);
//create first row
XWPFTableRow tableRowOne = table.getRow(0);
tableRowOne.getCell(0).setText("col one, row one");
tableRowOne.addNewTableCell().setText("col two, row one");
tableRowOne.addNewTableCell().setText("col three, row one");
}
}
}
}
但是我总是会得到一个空光标错误
java.lang.NullPointerException
servlet.generadorWord.processRequest(generadorWord.java:77)
servlet.generadorWord.doGet(generadorWord.java:123)
但这是我的第57行:
tableRowOne.getCell(0).setText("col one, row one");
我想我已经尝试了所有方法,但是我不明白为什么光标总是指向我为空