2012-03-16 130 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