0

我有一个这样的 xml 文件。我正在使用java。

<ui>
        <profile name="aaa">
             <country>India</country>
        </profile>

        <profile name="xxx">
             <country>India</country>
        </profile>
</ui>

我想在节点配置文件中附加一个具有属性“aaa”的子节点。我有一个这样的 xml 字符串

"<gender>Male</gender><age></age>" 

预期输出:

    <ui>
        <profile name="aaa">
             <country>India</country>
             <gender>Male</gender>
              <age></age>
        </profile>

        <profile name="xxx">
             <country>India</country>
        </profile>
</ui>

我使用xpath来查找属性为 "aaa" 的配置文件元素 /ui/profile[@name='aaa']。但是,我不知道如何将子节点附加到其中。

4

2 回答 2

0

尝试这样的事情:

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

    <xsl:template
            match="ui/profile[@name = 'aaa']"
            name="add">
            <xsl:copy>
                <xsl:apply-templates select="@*|*" />

                    <xsl:element name="gender">
                        <xsl:value-of select="$gender" />
                    </xsl:element>
                    <xsl:element name="age">
                        <xsl:value-of select="$age" />
                    </xsl:element>
            </xsl:copy>
    </xsl:template>

$gender并且$age是参数值

于 2013-02-22T09:35:07.457 回答
-1

在java中,您可以在提取的节点上使用appendNode()方法

于 2013-02-22T09:37:55.210 回答