我正在尝试将查询输出到一个简单的 XML 文档。我已经多次将相同的代码用于其他查询,并且效果很好。在某处的描述字段中似乎有一个坏字符,并且 XMLformat() 没有将其过滤掉。我尝试了许多 REReplace() 过滤器无济于事。还尝试了 Ben Nadel 在这里找到的技术。http://www.bennadel.com/blog/1155-Cleaning-High-Ascii-Values-For-Web-Safeness-In-ColdFusion.htm一切都导致了同样的错误。我确实转储了输出并搜索了坏字符,但我什么也没找到。这个简单的事情已经变成了相当神秘的事情。我正在使用下面的代码。
<cfquery name="list" datasource="theDatasource">
SELECT ItemID, ItemCode, BrandName, description
FROM theTable
</cfquery>
<cfxml variable="outputXML">
<itemsBrand>
<cfoutput query="list">
<itemBrand>
<ItemID>#XmlFormat(ItemID)#</ItemID>
<ItemCode>#XmlFormat(ItemCode)#</ItemCode>
<BrandName>#XmlFormat(BrandName)#</BrandName>
<description>#XmlFormat(description)#</description>
</itemBrand>
</cfoutput>
</itemsBrand>
</cfxml>
<cffile action="write" file="#GetDirectoryFromPath(GetCurrentTemplatePath())#itemBrand.xml" output="#toString(outputXML)#"/>
导致错误“在文档的元素内容中发现了一个无效的 XML 字符 (Unicode: 0x1e)。” 任何帮助,将不胜感激。