使用fprintf生成XML

时间:2011-09-16 04:16:32

标签: c xml printf

使用fprintf()在C中生成am xml时,应该记住什么? 我正在使用它,但在IE中打开xml时我遇到了一些问题;但是,在任何编辑器中,它都会显示正确的内容。

代码

int WriteXmlElement(const char* filename, const char* element, int iTextAssociated)
{
   FILE *fp = NULL;

   fp = fopen(filename, "a+");
   if(fp != NULL)
   {
      fprintf(fp, "<%s>\n",element);
      fprintf(fp,"</%s>\n" , element);

      fclose(fp);
      return 0;
   }
   else 
      return -1;

}

IE中的XML

<?xml version="1.0" encoding="UTF-8" ?> 
<Group /> 

任何编辑器中的XML

<?xml version="1.0" encoding="UTF-8" ?> 
<Group> </Group>

2 个答案:

答案 0 :(得分:2)

正在生成XML。 Internet Explorer选择通过自动将<foo></foo>形式的空标记重构为<foo/>以进行显示(它不会修改磁盘上的文件)来重新解释它。如果您想确保您生成的XML文件具有正确的内容,只需在常规文本编辑器而不是IE中查看它。

答案 1 :(得分:0)

你做的方式是最简单的方式..但我更喜欢你使用http://www.minixml.org/

以你的方式确保这件事 1 GT;应按顺序关闭每个节点

2 - ;如果你不在&amp;之间写任何东西然后在它们之间放一个空格 (如果你之间没有写任何东西,某些浏览器会显示错误)