一、问题
默认的Libxml2在写入XML文件时,都是将所有内容写成一行的,不便于文本查看。其实Libxml2是可以生成格式化的XML文件的。
二、解决方法
1)打开开关
xmlKeepBlanksDefault(0);
xmlIndentTreeOutput = 1;
2)注意这个开关必须在XML节点加入到DOM树之前打开
即在我们需要在创建XML文件前或者加载XML文件前
3)保存文件时使用xmlSaveFormatFile或xmlSaveFormatFileEnc或xmlSaveFormatFileTo,
并设置最后一个参数format=1
三、格式说明
由于Libxml2是unix下的库,所以生成格式化XML只有换行符,没有回车符,且缩进用空格符而不是制表符。