如何在一个文件中连接多个3 XML?

如何在一个文件中连接多个3 XML?,xml,xslt,asp-classic,Xml,Xslt,Asp Classic,如何在一个文件中连接多个3 XML 在XML文件中:01.XML <xmlResponse> <Person> <FirstName>FirstName_1</FirstName> <LastName>LastName_1</LastName> </Person> <Person>

如何在一个文件中连接多个3 XML

在XML文件中:01.XML

 <xmlResponse>
        <Person>
            <FirstName>FirstName_1</FirstName>
            <LastName>LastName_1</LastName>
        </Person>
        <Person>
            <FirstName>FirstName_2</FirstName>
            <LastName>LastName_2</LastName>
        </Person>
    </xmlResponse>

名_1
姓氏1
姓氏2
姓氏2
在XML文件中:02.XML

<xmlResponse>
    <Person>
        <FirstName>FirstName_2</FirstName>
        <LastName>LastName_2</LastName>
    </Person>
    <Person>
        <FirstName>FirstName_3</FirstName>
        <LastName>LastName_3</LastName>
    </Person>
    <Person>
        <FirstName>FirstName_4</FirstName>
        <LastName>LastName_4</LastName>
    </Person>
</xmlResponse>

姓氏2
姓氏2
名_3
姓氏3
名字4
姓氏4
在XML文件中:03.XML

<xmlResponse>
    <Person>
        <FirstName>FirstName_5</FirstName>
        <LastName>LastName_5</LastName>
    </Person>
</xmlResponse>

名
姓氏5
我需要如下输出(01.xml+02.xml+03.xml)


名_1
姓氏1
姓氏2
姓氏2
姓氏2
姓氏2
名_3
姓氏3
名字4
姓氏4
名
姓氏5
希望你的回应,
tks…

试试这个XSLT2.0样式表

<?xml version="1.0"?>
<xsl:stylesheet 
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:fn="http://www.w3.org/2005/xpath-functions"
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  version="2.0"
  exclude-result-prefixes="xsl xs fn">

<xsl:output indent="yes" encoding="UTF-8" />
<xsl:param name="doc2" /> <!-- File 02.xml -->
<xsl:param name="doc3" /> <!-- File 03.xml -->
<xsl:variable name="doc2-doc" select="document($doc2)" />
<xsl:variable name="doc3-doc" select="document($doc3)" />

<xsl:template  match="/">
 <xmlResponse>
    <xsl:apply-templates />
    <xsl:apply-templates select="$doc2-doc/*" />
    <xsl:apply-templates select="$doc3-doc/*" />
 </xmlResponse>
</xsl:template>

<!-- Identity transform follows. -->
<xsl:template match="element()">
  <xsl:copy>
    <xsl:apply-templates select="@*,node()"/>
   </xsl:copy>
</xsl:template>
<xsl:template match="attribute()|text()|comment()|processing-instruction()">
  <xsl:copy/>
</xsl:template>

</xsl:stylesheet>

对于转换,输入文档将是您的第一个文档(文件01.xml),另外两个将作为转换参数传入


如果您仅限于XSLT 1.0,则需要进行一些修改,但应该不会太困难。

尝试此XSLT 2.0样式表

<?xml version="1.0"?>
<xsl:stylesheet 
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:fn="http://www.w3.org/2005/xpath-functions"
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  version="2.0"
  exclude-result-prefixes="xsl xs fn">

<xsl:output indent="yes" encoding="UTF-8" />
<xsl:param name="doc2" /> <!-- File 02.xml -->
<xsl:param name="doc3" /> <!-- File 03.xml -->
<xsl:variable name="doc2-doc" select="document($doc2)" />
<xsl:variable name="doc3-doc" select="document($doc3)" />

<xsl:template  match="/">
 <xmlResponse>
    <xsl:apply-templates />
    <xsl:apply-templates select="$doc2-doc/*" />
    <xsl:apply-templates select="$doc3-doc/*" />
 </xmlResponse>
</xsl:template>

<!-- Identity transform follows. -->
<xsl:template match="element()">
  <xsl:copy>
    <xsl:apply-templates select="@*,node()"/>
   </xsl:copy>
</xsl:template>
<xsl:template match="attribute()|text()|comment()|processing-instruction()">
  <xsl:copy/>
</xsl:template>

</xsl:stylesheet>

对于转换,输入文档将是您的第一个文档(文件01.xml),另外两个将作为转换参数传入


如果您仅限于XSLT 1.0,则需要进行一些修改,但这应该不会太难。

您可以使用XSLT,但在ASP Classic(或其他任何形式)下执行此任务时,这是一种过分的做法

(假设您没有错误标记您的问题)

如果目标输出是ASP响应,那么最后一行可以是

xmlPrime.save Response

您可以使用XSLT,但在ASP Classic(或其他任何形式)下执行此任务时,这是一种过分的做法

(假设您没有错误标记您的问题)

如果目标输出是ASP响应,那么最后一行可以是

xmlPrime.save Response

你能给我一个提示,告诉我你想做这件事的方向吗?例如,您想使用一些XML库,还是只剥离每个文件中的第一行和最后一行,并连接内容?我们还需要知道XML是不同的还是有一些交叉点。您能给出一个提示,说明您希望这样做的方向吗?例如,您想使用一些XML库,还是只剥离每个文件中的第一行和最后一行并连接内容?我们还需要知道XML是不同的还是有交叉点