我有几个问题。
我想用Java创建MS word文件。
我可以制作简单的word文件。但是我不知道如何编码来创建一个具有复杂形状的单词。
使用xml代码,在我看来似乎可以使。
如何使用原始的xml代码与docx4j?
我使用了下面的代码样式。但这太难了
static String tblXML = "<w:tbl xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" " +
"xmlns:v="urn:schemas-microsoft-com:vml" " +
"xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" " +
"xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">"
+"<w:tblPr>"
+"<w:tblStyle w:val="a5" />"
+"<w:tblW w:w="0" w:type="auto" />"
+"<w:tblLook w:val="04A0" w:firstRow="1" w:lastRow="0" w:firstColumn="1" w:lastColumn="0" w:noHBand="0" w:noVBand="1" />"
+"</w:tblPr>"
+"<w:tblGrid>"
+"<w:gridCol w:w="9224" />"
+"</w:tblGrid>"
+"<w:tr w:rsidR="00F327EA" w:rsidTr="0047463F">"
+"<w:trPr>"
+"<w:trHeight w:val="1912" />"
+"</w:trPr>"
+"<w:tc>"
+"<w:tcPr>"
+"<w:tcW w:w="9224" w:type="dxa" />"
+"</w:tcPr>"
+"<w:p w:rsidR="00F327EA" w:rsidRDefault="00F327EA" w:rsidP="0047463F">"
+"<w:r>"
+"<w:t xml:space="preserve">Plan No. </w:t>"
+"</w:r>"
+"</w:p>"
+"<w:p w:rsidR="00F327EA" w:rsidRDefault="00F327EA" w:rsidP="0047463F">"
+"<w:r>"
+"<w:t xml:space="preserve">Inspection Type Special , Regular , Specially assigned inspector , , , </w:t>"
+"</w:r>"
+"</w:p>"
+"<w:p w:rsidR="00F327EA" w:rsidRDefault="00F327EA" w:rsidP="0047463F">"
+"<w:r>"
+"<w:t>Planning Period 2015</w:t>"
+"</w:r>"
+"<w:r>"
+"<w:softHyphen />"
+"<w:t>06</w:t>"
+"</w:r>"
+"<w:r>"
+"<w:softHyphen />"
+"<w:t>17 ~ 2015</w:t>"
+"</w:r>"
+"<w:r>"
+"<w:softHyphen />"
+"<w:t>06</w:t>"
+"</w:r>"
+"<w:r>"
+"<w:softHyphen />"
+"<w:t xml:space="preserve">18 </w:t>"
+"</w:r>"
+"</w:p>"
+"<w:p w:rsidR="00F327EA" w:rsidRDefault="00F327EA" w:rsidP="0047463F">"
+"<w:r>"
+"<w:t xml:space="preserve">Individual Target Aerodrome (AD), Major International Airport, </w:t>"
+"</w:r>"
+"<w:proofErr w:type="spellStart" />"
+"<w:r>"
+"<w:t>GimHae</w:t>"
+"</w:r>"
+"<w:proofErr w:type="spellEnd" />"
+"<w:r>"
+"<w:t xml:space="preserve"> </w:t>"
+"</w:r>"
+"</w:p>"
+"<w:p w:rsidR="00F327EA" w:rsidRDefault="00F327EA" w:rsidP="0047463F">"
+"<w:r>"
+"<w:t xml:space="preserve">Inspector Primary: </w:t>"
+"</w:r>"
+"<w:proofErr w:type="spellStart" />"
+"<w:r>"
+"<w:t>superadmin</w:t>"
+"</w:r>"
+"<w:proofErr w:type="spellEnd" />"
+"<w:r>"
+"<w:t xml:space="preserve"> </w:t>"
+"</w:r>"
+"</w:p>"
+"<w:p w:rsidR="00F327EA" w:rsidRDefault="00F327EA" w:rsidP="0047463F">"
+"<w:pPr>"
+"<w:ind w:firstLineChars="850" w:firstLine="1700" />"
+"</w:pPr>"
+"<w:proofErr w:type="spellStart" />"
+"<w:r>"
+"<w:t>Secondary:superadmin</w:t>"
+"</w:r>"
+"<w:proofErr w:type="spellEnd" />"
+"</w:p>"
+"</w:tc>"
+"</w:tr>"
+"</w:tbl>";
您可以很容易地反编组这样的字符串。
创建更复杂代码的最简单方法是使用docx4j代码生成器。您向它提供一个示例docx,它就会生成合适的代码(在String形式和使用JAXB API之间进行选择)。
代码生成器可以在线获取,也可以作为Word插件获取。