J'utilise Xerces-c dans mon projet, et je voudrais créer un seul DOMElement
sans avoir à créer un nouveau DOMDocument
. Une telle chose est possible?Comment créer un DOMEment vide
Répondre
Je n'ai pas vu un chemin. AFAIK le DOMDocument agit comme le "pool de mémoire" et tous les éléments sont créés dans ce pool. Dans les Xerces docs on voit:
objets créés par DOMDocument :: createXXXX Les utilisateurs peuvent appeler la fonction release() pour indiquer la libération de tous les nœuds orphelins. Lorsqu'un nœud orphelin est libéré, ses enfants associés seront également libérés. L'accès à un nœud libéré entraînera un comportement inattendu. Ces nœuds orphelins seront finalement libérés, sinon déjà fait, lorsque son propriétaire du document est publié
J'ai travaillé dans cette situation en gardant un bloc-notes DOMDocument autour et à l'utiliser pour créer des fragments ou des orphelins nœuds et de les adopter dans leurs documents de destination quand je suis prêt. Par exemple.
// Create a fragment holding two sibling elements. The first element also has a child.
DOMDocumentFragment* frag = scratchDom->createDocumentFragment();
DOMNode* e1 = frag->appendChild(frag->getOwnerDocument()->createElement("e1"));
e1->appendChild(e1->getOwnerDocument()->createElement("e1-1"));
DOMNode* e2 = frag->appendChild(frag->getOwnerDocument()->createElement("e2"));
...
// Paste the contents of the fragment into a "parent" node from another document
DOMNode* parentFromOtherDom = ...;
parentFromOtherDom->appendChild(parentFromOtherDom->getOwnerDocument()->adopt(frag));
scratchDom->removeChild(frag);
- 1. file_get_contents créer un fichier vide
- 2. créer un nouveau document vide avec javascript
- 3. Comment supprimer un espace vide?
- 4. Impossible de créer un formulaire vide dans MS Access
- 5. Pourquoi bitmapImageRepForCachingDisplayInRect: créer une image vide?
- 6. Comment créer une solution vide dans Visual Studio (2008)?
- 7. Comment créer un dictionnaire vide pour un argument facultatif dans VB.NET
- 8. Postgres - Comment vérifier un tableau vide
- 9. Comment Subversion stocke un répertoire vide
- 10. comment représenter un champ vide en yaml
- 11. Comment faire pour vérifier un Gridview vide
- 12. Mysql/php - Comment créer un objet ligne 'vide' pour la mise en cache
- 13. Comment prévenir, contrer ou compenser, un champ vide/NULL (MySQL) retournant un ensemble vide
- 14. PHPUnit Database Extension - Comment avoir un jeu de données vide?
- 15. comment ajouter une ligne vide dans un IQueryable?
- 16. Modèle vide, table vide
- 17. Si j'ai un pointeur vide, comment y mettre un int?
- 18. Comment créer un rappel
- 19. Meilleure façon de créer une carte vide en Java
- 20. Comment trouver un champ vide sur l'image d'un document numérisé
- 21. Comment créer un badge ou un widget javascript?
- 22. Comment créer un bookmarklet pour créer un grattage d'écran?
- 23. Comment créer un UIViewController modal translucide?
- 24. Quel est le moyen conseillé pour créer un tableau vide dans VB.NET?
- 25. Sur Ghostscript: moyen le plus rapide de créer un document .tif vide
- 26. Est-il possible de créer un modèle de fichier .mo vide?
- 27. Comment ajouter des éléments à un tableau vide en PHP?
- 28. Comment trouver un port vide pour démarrer WCF web ServiceHost
- 29. Comment masquer/supprimer un DIV quand il est vide
- 30. Comment se débarrasser de div vide qui contient un GridView