Convertir org.le w3c.dom.Document de Fichier de fichier
J'ai un fichier xml en tant qu'objet dans Java org.le w3c.dom.Le Document doc et je veux le convertir en un Fichier fichier. Comment puis-je convertir le type de Document dans un Fichier?
grâce
edit:
Je veux ajouter des éléments de métadonnées dans un fichier xml (norme dita) avec le type de Fichier.
Je connais un moyen pour ajouter des éléments au dossier, mais puis-je convertir le fichier vers un org.le w3c.dom.Document. Je l'ai fait avec la méthode loadXML:
private Document loadXML(File f) throws Exception{
DocumentBuilder b = DocumentBuilderFactory.newInstance().newDocumentBuilder();
return builder.parse(f);
Après que je change le org.le w3c.dom.Le Document, puis je veux continuer avec le flux du programme et je dois convertir le Document doc de retour vers un Fichier fichier. Ce qui est une façon efficace de le faire? Ou quelle est la meilleure solution pour obtenir certains éléments dans un Fichier xml sans avoir à les convertir?
Grâce
J'ai ajouté des informations supplémentaires dans le premier post
Je ne suis pas sûr de ce que la conversion d'un DOM à un Fichier est censé signifier. Vous pouvez sérialiser les DOM du contenu XML, écrit que pour une chaîne ou d'un fichier; est que ce que vous demandez? Je suis également pas sûr de ce que vous essayez de faire avec le fichier résultant et pourquoi il ne peut pas être fait par le biais de l'Api DOM. Un exemple de ce que vous êtes en train d'essayer d'accomplir pourrait aider.
OriginalL'auteur jer08 | 2016-05-08
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser un Transformateur de classe à la sortie de l'ensemble du contenu XML dans un Fichier, comme l'ont montré ci-dessous:
espère que cela peut vous aider.
OriginalL'auteur Mario Cairone
Avec JDK 1.8.0 un court moyen est d'utiliser le haut-XMLSerializer (qui a été introduit avec le JDK 1.4 comme un fork de Apache Xerces)
Utiliser un objet de type
OutputFormat
pour configurer la sortie, par exemple comme ceci:Remarque que les classes sont de
com.sun.*
paquet qui n'est pas documentée et donc n'est généralement pas vu comme la meilleure façon de faire les choses. Cependant, avecjavax.xml.transform.OutputKeys
vous ne pouvez pas spécifier le montant de retrait ou de largeur de ligne, par exemple. Donc, si c'est important, cette solution devrait aider.com.sun
classes?Dépend de vos besoins ou de politiques. Veuillez noter que
com.sun.*
n'est passun.*
Ce code a prouvé pour être stable pendant plus d'un an maintenant, et d'autres bien connus des cadres de l'utilisationcom.sun.*
. Mais, oui, dans le cas peu probable d'un changement incompatible, vous devez être prêt à modifier votre code. Ce qui ne devrait pas être un gros problème, si la politique de votre entreprise contient certains mots commeagile
oucontinuous refactoring
. Pour plus de détails: stackoverflow.com/questions/8565708/...OriginalL'auteur Würgspaß