2011-07-26 57 views
0

在java中添加和刪除xml中的元素時,只是在刪除空白時保持每個節點與xml文檔保持一致,而且我無法理解XML樣式表。Java風格XML每行只有一個節點,沒有空格

以下是目前爲止發生的情況。

首先,我有以下XML,

<jobs> 
    <job>Job 1</job> 
    <job>Job 2</job> 
    <job>Job 3</job> 
    <job>Job 4</job> 
</jobs> 

然後我刪除的元素之一,它結束了看起來像這樣與whitespacewhere的因素是,

<jobs> 
    <job>Job 1</job> 

    <job>Job 3</job> 
    <job>Job 4</job> 
</jobs> 

所以,我想申請我發現下面的樣式表,

<xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 

<xsl:output method="xml" omit-xml-declaration="yes"/> 

    <xsl:strip-space elements="*"/> 

    <xsl:template match="@*|node()"> 
    <xsl:copy> 
    <xsl:apply-templates select="@*|node()"/> 
    </xsl:copy> 
    </xsl:template> 

</xsl:stylesheet> 

哪個讓xml出現在一里因爲它刪除了所有的空格。但我試圖保持文件的可讀性。

<jobs><job>Job 1</job><job>Job 2</job><job>Job 3</job><job>Job 4</job></jobs> 

我想知道是否有人有樣式表來實現這一目標嗎?

回答

2

您需要添加indent="yes"<xsl:output

<xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/>

(此外,您可能要切換到XSL 2.0版)

希望這有助於

+0

太謝謝你了。我很感激。完全按照我以前的方式工作。 – hooligan