我想用jaxb生成xml文件但是总有<?xml version="1.0" encoding="utf-8">这个文档声明,有什么方法可以去掉这个声明

来源:5-4 消息的接收与响应2

孤_0002

2017-10-13 18:03

public static String textMessageToXml(TextMessage textMessage) throws JAXBException{
         JAXBContext jaxbContext = JAXBContext.newInstance(TextMessage.class);
         Marshaller jaxbMarshaller = jaxbContext.createMarshaller();
         jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
         jaxbMarshaller.setProperty(Marshaller.JAXB_ENCODING, "utf-8");
         jaxbMarshaller.setProperty(Marshaller.JAXB_FRAGMENT, false);
         StringWriter writer = new StringWriter();  
         jaxbMarshaller.marshal(textMessage, writer);
         return writer.toString();

    }




写回答 关注

1回答

  • 孤_0002
    2017-10-17 15:49:20

    反正它已经生成xml了,把它当成xml进行解析吧。使用dom4j

    ,writer.toString().getRootElement();

    孤_0002

    Document document=null; try { document=DocumentHelper.parseText(writer.toString()); } catch (DocumentException e) { e.printStackTrace(); } String s=document.getRootElement().asXML().toString(); return s

    2017-10-17 15:51:32

    共 1 条回复 >

初识Java微信公众号开发

Java微信公众号开发的入门教程,掌握微信公众号基本概念

158335 学习 · 469 问题

查看课程

相似问题