2013-07-08 30 views
0

我目前使用libxml2從內存解析String到具有xmlParseDoc函數的樹。但是,在向XML添加新節點後,使用libxml2函數,我需要從樹中恢復爲字符串形式,類似於xmlSaveFormatFile函數,僅在磁盤文檔中使用字符串,而不是實際的,我不知道函數可以做這樣的事情。非常感謝與使用libxml2的xmlParseDoc相反

回答

0

使用xmlDocDumpMemory和朋友。從文檔:

void xmlDocDumpMemory(xmlDocPtr cur, xmlChar **mem, int *size); 

轉儲內存中的XML文檔,並且返回以字節爲單位的#xmlChar *和它的大小。這取決於調用者使用xmlFree()釋放內存。得到的字節數組是零終止的,儘管最後的0不包含在返回的大小中。

cur:文檔
mem: OUT:存儲器指針
size: OUT:存儲器長度