我正在使用dbms_xmlgen
来帮助生成我的XML
文件。但是它没有编码我的chr(50093)
值。
当我将输出保存到文件并使用IE9查看文件时,我从IE9
An invalid character was found in text content.
Error processing resource 'file:c/temp/XML_analysis/xml_aaa.xml'.
D
这是我的样本作品:
set serveroutput on;
declare
cursor error_item is
with error_row as
(select 'D' || chr(50093) || 'a' as lname from dual)
select lname from error_row;
line1 varchar2(100) := '<?xml version="1.0" encoding="UTF-8" ?>';
line2 varchar2(100) := '<word>';
line3 varchar2(100);
line4 varchar2(100) := '</word>';
begin
open error_item;
fetch error_item into line3;
close error_item;
line3 := dbms_xmlgen.convert(line3);
dbms_output.put_line(line1);
dbms_output.put_line(line2);
dbms_output.put_line(line3);
dbms_output.put_line(line4);
end;
我已经咨询了这个Orafaq.com网站。
问题:
为什么不dbms_xmlgen.convert
编码chr(50093)
?
我在哪里可以了解更多关于如何使用Oracle方法对UTF8字符集进行xml编码?
答案 0 :(得分:0)
这是编码角色的一种方法。
&#
字符前置237,并附加;
。在Oracle中,您可以使用replace('string with characters',chr(50093),'í'
在这种情况下,请将您的line3
转让声明替换为
line3 := replace(line3,chr(50093),'í');
您应该能够在XML阅读器中阅读输出。