1

这是示例代码,“\t”不适用于此 setText 方法?:

XWPFDocument document = new XWPFDocument();
XWPFParagraph tp = document.createParagraph();
XWPFRun tRun = tp.createRun();
tRun.setText("a");
tRun.setText("\t"); // not work
tRun.setText("b");

FileOutputStream outStream = null;
try {
    outStream = new FileOutputStream("testTabWithPOI.doc");
    document.write(outStream);
    outStream.close();
} catch (FileNotFoundException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
}
4

1 回答 1

2

这不是您在运行中添加制表符或换行符的方式。Microsoft Words 生成文件的方式是添加特殊的中断样式元素,因此这也是您需要在 Apache POI 中执行的操作,因为这就是格式的工作方式。

您可以在TestXWPFRun 的 testAddTabsAndLineBreaks() 中看到添加标签的示例。您的代码必须是:

XWPFRun tRun = tp.createRun();
tRun.setText("a");
tRun.addTab();
tRun.setText("b");

(您也需要使用新的 Apache POI 副本以获得addTab()支持)

于 2014-03-18T14:27:01.030 回答