Iam在C中编程并使用libxml生成XML文件,但我得到以下内容 错误:xmlEscapeEntities:char超出范围。我从数据库中挑选数据并将其存储在生成的标签中(在生成XML文件期间)。
我想知道为什么我会收到此错误。这是什么主要原因? Code spinet:
xmlNodeSetContent(temp_id,(const xmlChar *)details[nCl1+0]);
632 xmlNodeSetContent(temp_id2, (const xmlChar *)details[nCl1+1]);
633 xmlNodeSetContent(temp_id3,(const xmlChar *)details[nCl1+2]);
634 xmlNodeSetContent(temp_id4,(const xmlChar *)details[nCl1+3]);
635 xmlNodeSetContent(temp_id5,(const xmlChar *)details[nCl1+4])
;
这里变量"详细信息"具有从数据库中选取的值 这是我得到此错误的代码的一部分。
答案 0 :(得分:1)
我猜你提供的字符串xmlChar *
不是正确的UTF-8字符串。因此它可能以其他标准编码,您需要先将其转换为UTF-8。您可以使用例如iconv library。