Batch file 编辑XML文件

Batch file 编辑XML文件,batch-file,automation,macros,editing,xml,Batch File,Automation,Macros,Editing,Xml,我有一些XML文件,我需要自动编辑它们 比如说 <Content> <Texts> <Text id="1"> <en value="blaabla" /> </Text> <Text id="2"> <en value="blablablablal" /> </Text> </Texts> </Content> 我需要复制“en value”行,并将这些行添加到其下一行

我有一些XML文件,我需要自动编辑它们

比如说

<Content>
<Texts>
<Text id="1">
<en value="blaabla" />
</Text>
<Text id="2">
<en value="blablablablal" />
</Text>
</Texts>
</Content>

我需要复制“en value”行,并将这些行添加到其下一行,但只需进行一次更改

因此,处理完成后,结果应为:

<Content>
<Texts>
<Text id="1">
<en value="blablabla" />
<fr value="blablabla" />
</Text>
<Text id="2">
<en value="blablablablal" />
<fr value="blablablablal" />
</Text>
</Texts>
</Content>

$sed'/您可以使用此XSLT转换XML文件:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                version="1.0">    
   <xsl:output indent="yes"/>

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

    <xsl:template match="en[@value]">
        <xsl:copy>
        <xsl:apply-templates select="@*|node()" />
        </xsl:copy>
        <fr value="{@value}"/>
    </xsl:template>

</xsl:stylesheet>

这可以使用C#.NET和许多其他脚本语言来完成。你想干什么?如果我们能够知道您想要使用什么,那么就更容易了,这样我们就可以为您量身定制答案。
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                version="1.0">    
   <xsl:output indent="yes"/>

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

    <xsl:template match="en[@value]">
        <xsl:copy>
        <xsl:apply-templates select="@*|node()" />
        </xsl:copy>
        <fr value="{@value}"/>
    </xsl:template>

</xsl:stylesheet>