`

解决XML空结点非标准格式问题

    博客分类:
  • XML
 
阅读更多

解决XML空结点格式问题:

   如有的XML标准空结点如:<GNo></GNo>要求生成<GNo/>的形式。利用DOM4J的document.asXML方法解决。

/** 
    * @Title: marshaller 
    * @Description: 生成XML报文,并解决空节点问题:如<GNo></GNo>改为<GNo/>
    * @param @param marobject
    * @param @param mappingfile
    * @param @param fileName
    * @param @return
    * @param @throws Exception   
    * @return String  
    * @throws 
    */ 
    public static String marshaller(Object marobject, String mappingfile,String fileName) throws Exception {
        String objStr = "";
        try {
            Mapping map = new Mapping();
            map.loadMapping(mappingfile);
            if (true) {
                StringWriter sw = new StringWriter();
                Marshaller marshaller = new Marshaller(sw);
                marshaller.setEncoding("UTF-8");
                marshaller.setMapping(map);
                marshaller.marshal(marobject);
                sw.flush();
                objStr = sw.toString();
                
                FileOutputStream fo = new FileOutputStream(new File(fileName));
                PrintStream so = new PrintStream(fo,true,"UTF-8");
            	Document document = DocumentHelper.parseText(objStr);
                so.print(document.asXML());
            	
                sw.close();
            }
        } catch (Exception ex) {
            throw new Exception("marshaller() " + ex.toString());
        }
        return objStr;
    }

 

分享到:
评论

相关推荐

    Tinyxml 源代码(VC6 & VS2005)

    如果文件或者数据流以非标准但普遍的"UTF-8引导字节" (0xef 0xbb 0xbf)开始,TinyXML会以UTF-8的方式来读取它。 如果包含有encoding="UTF-8"的声明被读取,那么TinyXML会以UTF-8的方式来读取它。 如果读取到没有指定...

    TinyXML2.5.2中文文档

    - **使用 STL 的选项**:TinyXML 可以选择性地使用标准模板库(STL)。当启用 STL 时,它会使用 `std::string` 类型,并且支持 `std::istream` 和 `std::ostream` 用于读写操作。此外,它还提供了两种版本的 API ...

    xml中的空格之完全解说

    保留下来的空格结点可能是因为它们属于空格保留组件(如`xsl:text`元素),或者包含了非空格字符,或者因为祖先组件中的`xml:space`属性设置为`preserve`。 总之,XML中的空格处理是一项细致的工作,涉及到XML解析...

    解析器与应用程序接口PPT学习教案.pptx

    解析器是处理XML文档的关键组件,它的主要任务是对XML文档进行解析,确保其格式正确,并将内容和结构传递给应用程序。XML解析器分为两种主要类型:验证解析器和非验证解析器。验证解析器不仅检查XML文档的语法正确性...

    从XPath到SQL算法的实现.pdf

    首先,要了解的是XPath语言,它是W3C组织所制定的标准,用于在XML文档中寻址和选取信息。XPath提供了一个定位语法,使得XSLT(Extensible Stylesheet Language Transformations)和XPointer等技术能有效地对XML文档...

    实用算法及数据结构基础教程

    - **定义**:通过遍历所有可能的情况来解决问题的方法。 - **应用场景**:当问题规模较小时,可以通过枚举所有可能性来找到最优解。 - **优点**:简单直观,容易理解。 - **缺点**:时间复杂度较高,不适合大规模...

    大连理工大学《多媒体技术》20秋在线作业2答案.docx.docx

    12. 音频格式:波形文件(如.wav)是一种未压缩的音频格式,占用空间较大,而非压缩格式。 以上是《多媒体技术》课程中的部分知识点,包括存储技术、音频处理、图像数字化、超文本系统架构以及相关的网络通信和数据...

    Java核心技术II(第8版)

    10.4.2 传递非远程对象 10.4.3 动态类加载 10.4.4 具有多重接口的远程引用 10.4.5 远程对象与equals、hashCode和clone方法 10.5 远程对象激活 10.6 Web Services与JAX-WS 10.6.1 使用JAX-WS 10.6.2 Web服务的客户端 ...

    js节点操作

    处理指令用于向应用程序传递非 XML 数据。 ##### 11. createTextNode 创建包括给定数据的文本节点 `createTextNode` 方法创建一个新的文本节点。这是创建文本内容的基本方法。 ##### 12. getElementsByTagName ...

    精通JavaScript

    • 9.3.htm 非标准事件绑定 • 9.4.htm 简单的JavaScript事件绑定 • 9.5.htm 简单的JavaScript事件绑定 • 9.6.htm 事件处理器的作用域 • 9.7.htm 事件处理器的作用域之...

    2018年上半年信息系统管理

    9. 计算机网络通信协议:在网络通信中,SGML、XML、HTML、VRML等都是用于数据表示和结构化描述的标准格式。 10. Windows资源管理器文件操作:在Windows系统中,选择离散文件时可以通过按住CTRL键或SHIFT键配合鼠标...

    前端笔试面试题目总结.docx编程资料

    #### 浏览器兼容性问题与解决方案 - **内核**:Chrome 使用 Blink,Firefox 使用 Gecko,Safari 使用 WebKit,Edge 使用 EdgeHTML。 - **常见兼容性问题**:如 IE 下的盒模型问题、CSS3 新特性支持度差异、事件模型...

    NOIP2011提高组初赛试题-C++含答案.pdf

    8. 万维网联盟(W3C)制定了包括HTML、XML、CSS在内的Web标准,以确保兼容性和信息流通。 9. 这种站队方式类似于插入排序,每个学生找到比自己高的同学并插入其后。 10. 诺贝尔物理学奖在1956年授予了肖克利、巴丁和...

    网络工程师复习笔记及考点归纳.pdf

    弹性分组环(RPR)能够在50毫秒内隔离故障,每个结点都能执行公平算法,以确保网络的高效运行。 在路由器的冗余设计中,包括接口冗余、电源冗余、系统板冗余、时钟冗余以及设备冗余,这些冗余设计能提高网络的可用...

    C#编程经验技巧宝典

    2 &lt;br&gt;0003 设置程序代码行序号 3 &lt;br&gt;0004 开发环境全屏显示 3 &lt;br&gt;0005 设置窗口的自动隐藏功能 3 &lt;br&gt;0006 根据需要创建所需解决方案 4 &lt;br&gt;0007 如何使用“验证的目标架构”功能 4 ...

Global site tag (gtag.js) - Google Analytics