Java 使用样式写入word文档
我正在将列表中的文本写入word文档,现在的问题是,它没有任何样式/中断 像这样: 测试测试 但我希望它是这样的: 试验 试验Java 使用样式写入word文档,java,text,ms-word,apache-poi,Java,Text,Ms Word,Apache Poi,我正在将列表中的文本写入word文档,现在的问题是,它没有任何样式/中断 像这样: 测试测试 但我希望它是这样的: 试验 试验 列表项 列表项 我使用以下代码写入word文档: XWPFParagraph paragraph = nieuwDocument.createParagraph(); XWPFRun run = paragraph.createRun(); run.setText(gevonden.toString()); n
- 列表项
- 列表项
XWPFParagraph paragraph = nieuwDocument.createParagraph();
XWPFRun run = paragraph.createRun();
run.setText(gevonden.toString());
nieuwDocument.write(out);
nieuwDocument.close();
out.close();
System.out.println("Klaar");
gevonden.toString()=gevonden
是包含我的文本的列表
我已经尝试了split()
函数,但在列表中不起作用
有人有什么建议吗
更新
我确实将函数run.setText()
放入了for循环,并添加了add.Break()
但是它每次都从列表中写入文本,直到他离开for循环
for(int i = 0; i < gevonden.size(); i++)
{
run.addBreak();
run.setText(gevonden.toString());
}
for(int i=0;i
输出为:
[测试]
[测试]等
知道如何从列表gevonden
中获取I
。
如果我这样尝试:run.setText(gevonden[i].toString())代码>,
我得到一个错误:
表达式的类型必须是数组类型,但已解析为列表
我想如果我得到了I
我的问题就解决了如果你想在下一行列出一个项目,当你得到一个项目时尝试添加一个'/n'或'/r'如果你想在下一行列出一个项目,当你得到一个项目时尝试添加一个'/n'或'/r',根据,你可以使用run.addBreak()
方法和使用run.addcareereturn()
返回的回车
至于列表,我不确定,但您可以尝试以下方法:
XWPFParagraph para = doc.createParagraph();
para.setVerticalAlignment(TextAlignment.CENTER);
para.setNumID(addListStyle(abstractNum, doc, numbering));
para.getCTP().getPPr().getNumPr().addNewIlvl().setVal(BigInteger.valueOf( your_indent_level));
我认为您可能需要循环gevonden的内容,并将其添加到各自的级别。我从未使用过xwpfrun,但我希望这能有所帮助:)根据,您可以使用run.addBreak()
方法添加break,使用run.addcareereturn()
方法添加回车
至于列表,我不确定,但您可以尝试以下方法:
XWPFParagraph para = doc.createParagraph();
para.setVerticalAlignment(TextAlignment.CENTER);
para.setNumID(addListStyle(abstractNum, doc, numbering));
para.getCTP().getPPr().getNumPr().addNewIlvl().setVal(BigInteger.valueOf( your_indent_level));
我认为您可能需要循环gevonden的内容,并将其添加到各自的级别。我从未使用过xwpfrun,但我希望这能有所帮助:)多亏了阿克塞尔·里克特,我才得到了它
代码如下:
for(int i = 0; i < gevonden.size(); i++)
{
run.addBreak();
run.setText(gevonden.get(i));
}
for(int i=0;i
使用gevonden.get(i)代码>我得到了列表的一部分而不是整个列表。多亏了阿克塞尔·里克特,我才得到了它
代码如下:
for(int i = 0; i < gevonden.size(); i++)
{
run.addBreak();
run.setText(gevonden.get(i));
}
for(int i=0;i
使用gevonden.get(i)代码>我得到的是列表的一部分,而不是整个列表。通过gevonden使用for循环,并在循环中添加换行符(或您需要的其他样式)。确切地说,gevonden是什么类型的列表?如果是,那么请阅读集合中的迭代器以及Java中的for each构造。@AxelRichter是aJava.util.ArrayList
@AxelRichter感谢您的链接,但是在列表中循环进行得很顺利。问题更多的是将其输出到word文档中。通过gevonden使用for循环,并在循环中添加换行符(或您需要的其他样式)。gevonden到底是什么类型的列表?如果是,那么请阅读集合中的迭代器以及Java中的for each构造。@AxelRichter是aJava.util.ArrayList
@AxelRichter感谢您的链接,但是在列表中循环进行得很顺利。问题更多的是将其输出到word文档中。