2009-10-19 34 views
0

我在转换XML文件并保存后面临问题,即我没有获取XML文件顶部标记<?xml version="1.0" encoding="utf-8"?>转换后缺少<?xml version =“1.0”encoding =“XXXXX”?>

下面是我的XSLT文件:

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

    <xsl:template match="*"> 
    <xsl:copy> 
     <xsl:copy-of select="@*"/> 
     <xsl:apply-templates/> 
    </xsl:copy> 
    </xsl:template> 

    <!-- ... --> 
</xsl:stylesheet > 

我认为造成这样的错误没有这个标签的“无效的字符在文本内容被发现。”

任何人都可以帮助我获得解决方案。提前致谢。

+1

也许你可以改善拼写,也可以了解这个网站的工作原理。我相信你会收到更多更好的答案:-) – KLE 2009-10-19 12:25:28

+0

感谢您的建议。 – pravakar 2009-10-19 12:30:02

+0

接受问题的答案是没有问题的。 – pravakar 2009-10-19 13:33:31

回答

1

很可能,生成转换的代码就是您需要查看的地方。大多数XSLT库在某个地方有一个开关,告诉它是否输出一个xml声明,因为XSLT可以用来输出任何东西。

一个无效的字符错误很可能正是它听起来像。在文本内容中找到了对UTF8无效的字符。

0

今天早上我遇到了错误“在文本内容中发现无效字符”。在这种情况下,它在将XML传递给SQL存储过程作为参数时发生。如果您使用的是SQL Server 2000(我是),则需要确保使用NTEXT类型定义存储过程中的参数,而不是TEXT类型。

CREATE PROCEDURE Xml_Test 
    @MyXML NTEXT 
AS 
    .... 
+0

未从Sql Server生成的文件。 – pravakar 2009-10-19 13:34:56

相关问题