2012-03-16 168 views
1

我必须完成此任务:我得到一个从应用程序中导出的xml文件,我需要将其中包含表层次结构的xlsx文件更改为xlsx使用Excel的文件,然后让它回到xml所有这些变化。所有这些使用Java。我知道apache poi库。对于xlsx,您必须使用XSSF而不是HSSF。我检查了他们的操作excel的例子,但我正在围绕一点挣扎。官方poi网站中的例子展示了如何创建包含表格的xlsx文件,包含各种数据的单元格,但XML部分的位置以及读取XML文件的位置?我需要根据XML查找xlsx文件。XML到XLSX,反之亦然使用java

任何帮助或指向正确的方向将不胜感激。

我的XML示例文件:

<?xml version="1.0" encoding="utf-8" ?> 
<data type="data"> 

    <title>Duomenų suvedimo formos pavadinimas</title> 

    <fields> 
    <item id="org" label="Institucija/Įstaiga" valueField="orgId" labelField="orgLabel" tooltipField="orgTooltip" type="dim" /> 

    <item id="R1" label="R1 pavadinimas" group="Katalogo pavadinimas" valueField="value1" type="value" inputEnabled="1" valueType="numeric"/> 
    <item id="R2" label="R2 pavadinimas" group="Katalogo pavadinimas" valueField="value2" type="value" inputEnabled="1" valueType="numeric"/> 
    <item id="R3" label="R3 išvestinis" group="Katalogo pavadinimas" valueField="value3" type="value" inputEnabled="0" valueType="numeric" formula="[R1]/12 + [R2]"/> 
    </fields> 

    <dataItems> 
    <item orgId="ins1" orgLabel="Institucija 1" orgTooltip="Institucija 1" grp="2" value1="10" value2="20" value3="" isval="1" edit="1" /> 
    <item orgId="ins2" orgLabel="Institucija 2" orgTooltip="Institucija 2" grp="3" value1="15" value2="25" value3="" isval="1" edit="1" /> 
    </dataItems> 

</data> 

回答

0

有两个组成部分,您的问题 -

  • 1)XML解析和XML生成和形成XLSX了解析XML的
  • 2)数据。

对于使用Apache POI的第二部分,您是对的。对于第一部分,您需要一个XML解析器,并在将数据提供给XLSX生成程序之前插入它 - 尝试检出JAXB或简单解析器示例http://www.java-samples.com/showtutorial.php?tutorialid=152。 发布任何特定问题。您想要解析的XML样本可能会有所帮助。

+0

嘿,谢谢你的快速回答。我已经按照你的要求用我的XML例子编辑了我的文章。我需要它像xlsx一样在问题中提到。我正在查看您现在建议的链接,并且会跟进XML解析器的教程 – Skittl3s 2012-03-16 14:15:06