JAXB sérialisation Java fichier XML en sortie
problème est de savoir comment puis-je générer le fichier XML de sortie au lieu de système.?
package jaxbintroduction;
import java.io.FileOutputStream;
import java.io.OutputStream;
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
//TODO code application logic here
itemorder.Book quickXML = new itemorder.Book();
quickXML.setAuthor("Sillyme");
quickXML.setDescription("Dummie book");
quickXML.setISBN(123456789);
quickXML.setPrice((float)12.6);
quickXML.setPublisher("Progress");
quickXML.setTitle("Hello World JAVA");
try {
javax.xml.bind.JAXBContext jaxbCtx = javax.xml.bind.JAXBContext.newInstance(quickXML.getClass().getPackage().getName());
javax.xml.bind.Marshaller marshaller = jaxbCtx.createMarshaller();
marshaller.setProperty(javax.xml.bind.Marshaller.JAXB_ENCODING, "UTF-8"); //NOI18N
marshaller.setProperty(javax.xml.bind.Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
marshaller.marshal(quickXML, System.out);
OutputStream os = new FileOutputStream( "nosferatu.xml" );
marshaller.marshal( quickXML, os );
} catch (javax.xml.bind.JAXBException ex) {
//XXXTODO Handle exception
java.util.logging.Logger.getLogger("global").log(java.util.logging.Level.SEVERE, null, ex); //NOI18N
}
}
}
Avez-vous regardé dans l'API?
OriginalL'auteur Ket | 2012-12-09
Vous devez vous connecter pour publier un commentaire.
Vous êtes déjà regroupement pour
nosferatu.xml
. Juste supprimer ou commenter la ligne:si vous ne souhaitez pas afficher le résultat et fermer le
OutputStream
:Je suis aussi confronté à un problème similaire.Pourriez-vous s'il vous plaît avoir un coup d'oeil stackoverflow.com/questions/24731037/...
OriginalL'auteur Reimeus
Si vous utilisez un JAXB 2.1 ou plus, alors vous pouvez le maréchal directement à un
java.io.File
objet:Corrsponding Javadoc
OriginalL'auteur Blaise Doughan
Marshaller#marshall(...)
méthode prend un OutputStream ou de l'Écrivain en tant que paramètre. En fait, vous auriez trouvé ça dans l'API si vous aviez regardé.OriginalL'auteur Hovercraft Full Of Eels
C'est juste un processus de conversion à partir de java objet de fichier xml.
Il est tout à fait similaire à la sérialisation, vous devez être sûr de sérialisation et de l'ordonnancement.
Ici, j'ai fait les échantillons pour la sérialisation. Vous pouvez faire unmarshalling une manière similaire.
classe d'haricot avec jaxp annotations:
de triage:
OriginalL'auteur Kowthal ganesh