Я пытаюсь вывести запрос в простой XML-документ. Я использовал этот же код несколько раз для других запросов, и он работал нормально. Кажется, что в поле описания есть плохой символ, а XMLformat() не фильтрует его. Я пробовал многочисленные фильтры REReplace(), но безрезультатно. Также была найдена техника Бен Наделя. http://www.bennadel.com/blog/1155-Cleaning-High-Ascii-Values-For-Web-Safeness-In-ColdFusion.htm и все привело к той же ошибке. Я сбросил выходные данные и искал плохих персонажей, и ничего не нашел. Эта простая вещь превратилась в довольно загадочную. Я использую код ниже.Недопустимый символ XML (Unicode: 0x1e) в XML-выход Coldfusion
<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) был найден в содержимом элемента документа.» Любая помощь будет оценена по достоинству.
Я закончил тем, что сбрасывал содержимое, как рекомендовал Адам, и проверил его и проверил XML. Проблема вызвана символом Unicode: 0x1e, который был скрыт. Мне пришлось включить скрытые символы в текстовом редакторе, удалив проблемный символ, затем скопируйте и вставьте весь код в новый файл. Спасибо за помощь Адаму. –
NP [и т.д ... так что мой ответ достаточно длинный, чтобы опубликовать] –
Насколько я могу сказать, 0x1e не больше символа, а непечатаемого символа управления? –