`

JOX解决乱码和输出时间格式的方法

    博客分类:
  • xml
XML 
阅读更多
从简单的说吧。
1.时间格式的设置
JOXDateHandler会使用系统设置的com.oce.wutka.dateFormat属性,这个属性可能是在dtdparser113.jar中设置的,因为没有源码所以只是猜的。
在你的代码中加入System.setProperty("com.oce.wutka.dateFormat",format);来设置你希望的时间格式。

2.乱码
JOXBeanOutputStream的构造函数可以指定输出的XML文件头的encoding值,但是对内容没有影响,其实我想这也它的一个bug,原因是JOXBeanOutputStream类的writeString(String str)有问题。
 public void writeString(String str) throws IOException {
        write(str.getBytes());
    }

解决办法是继承JOXBeanOutputStream,然后重写这个方法。
 public void writeString(String str) throws IOException {
        write(str.getBytes(encoding));
    }


还有另一种方式,不用JOXBeanOutputStream,使用JOXBeanDOM
JOXBeanDOM dom = new JOXBeanDOM(false);
Document beanToDocument = dom.beanToDocument("MarkTest", b);
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
transformer.setOutputProperty("encoding", "GB2312");
transformer.setOutputProperty("indent", "GB2312");
DOMSource source = new DOMSource(beanToDocument);
StreamResult result = new StreamResult(new OutputStreamWriter(
                    new FileOutputStream(new File("bean31.xml")), "GB2312"));
transformer.transform(source, result);




分享到:
评论
2 楼 bill.end 2009-03-09  
sdh5724 写道
DOM模式做的不错么. 我们也用这个不少. 问题早就解决了. 

不过, 还是不放心这东西, 一个国际化都考虑的不好的东西, 还是比较担心的.

他可能就没想整复杂,力求简单
1 楼 sdh5724 2009-03-06  
DOM模式做的不错么. 我们也用这个不少. 问题早就解决了. 

不过, 还是不放心这东西, 一个国际化都考虑的不好的东西, 还是比较担心的.

相关推荐

    JOX(解决了日期格式转化和导出XML中文乱码问题)

    核心:解决了日期格式转化和导出XML中文乱码问题 介绍:有时候,我们需要把javabean的内容保存到文件,或者通过网络传递。这时候,把javabean转化为xml是一个常用的方式。但java本身提供的操作xml的方式有些麻烦,而...

    jox 真正所有包(包含测试类)

    jox库可能提供了便利的方法和工具,使得开发者可以轻松地在Java对象和XML文档之间进行序列化和反序列化操作。 "真正整合全部的包"意味着jox库不只是一个简单的模块,而是将所有必要的组件集成为一个完整的解决方案...

    用JOX实现xml和javabean的相互转换

    这些类提供了标准的getter和setter方法,符合JavaBeans规范,使得JOX能够方便地映射XML元素和属性到Java对象。 接着,我们讨论如何使用JOX将这个Java Bean转换为XML。JOX提供了一种简单的方式来序列化Java对象到XML...

    jox-1.17b3

    在Java编程中,jar(Java Archive)文件是一种用于打包和分发Java类、资源和元数据的标准格式。这里的“完整整合”可能意味着开发者已经确保了所有必需的库、类和其他依赖项都包含在这个jar文件中,使得用户可以直接...

    javabean2xml实例与jox-1.17b3.jar

    通过继承`java.io.OutputStream`,它能够接收Java对象并将其转换为XML格式,然后写入输出流。这使得开发者可以在处理流式数据时,轻松地将JavaBean对象集成到XML数据流中。 在提供的压缩包文件中,`javabean2xml....

    JOX实现XML和JavaBean相互转化

    XML和JavaBean相互转化是一个非常有用的工作,用来读写xml的组件很多,比如dom4j, sax, JDom,Digester等,但是很多组件用起来很麻烦,今天给大家推荐一个超级简单的组件JOX, JOX是一套用户XML document和Java ...

    jox-1.17b3.jar

    为了灵活的满足Web应用和Web services需求的变化,Java和XML的轻便性和可扩展性使它们成为解决这一问题的理想选择。SAX (Simple API for XML), DOM (document.nbspObject Model), XSL (Extensible Stylesheet ...

    jox-1.16.jar

    jox-1.16.jar jox-1.16.jar

    JOX 处理xml文档.doc

    在Java编程中,XML常被用作数据交换格式,因为它具有良好的可读性和可扩展性。JOX提供了简单易用的API,使得开发者能够方便地将JavaBean对象序列化为XML文档,或者从XML文档反序列化回JavaBean。 在提供的内容中,...

    jox的简单例子

    找了好久,才配出了这个例子,这个还是一个国外网站的,不容易,例子写的很简单,容易理解,千万别错过,

    jox.jar包 是操作xml文件与javaBean的相互转化

    jox是一组java类库 实现javaBean与xml相互转化 更加容易

    JavaBean与xml转换所依赖jar包---Jox

    解决xml中文格式化问题,JOXBeanOutputStream joxOut = new JOXBeanOutputStream(xmlData,"UTF-8");供大家参考。 其中包含的jar有jox-1.17b3.jar,javabean2xml.jar,dtdparser-1.21.jar,xml-apis.jar 和xerces....

    jox1.6源码

    在源码中,我们可以看到这些功能对应的类和方法,如`Serializer`、`Deserializer`等,它们负责将对象转换为可传输的格式,并能将接收到的数据还原为对象。这些类的设计和实现通常涉及到了设计模式的应用,如工厂模式...

    Jox bean与xml互相转换需要的jar包

    生成的xml可以格式化还有中文解决等。JOXBeanOutputStream joxOut = new JOXBeanOutputStream(xmlData,"UTF-8"); 包含的jar有xml-apis.jar javabean2xml.jar jox-1.17b3.jar dtdparser-1.21.jar 。

    微信小程序组件,持续更新中jox-wxapp-master.zip

    微信小程序组件,持续更新中jox-wxapp-master.zip

    xml与javabean的转换

    Jox通常能自动处理基本类型的转换,但遇到复杂类型如日期、自定义类等,可能需要自定义转换器。 4. **性能考虑**:大量数据的转换可能会影响性能,因此在处理大数据集时,考虑使用流式处理或分批转换。 5. **版本...

    javabean和xml互转详细文档+例子

    在JavaBean到XML的转换中,我们首先需要一个实现了JavaBean规范的类,包含属性和getter/setter方法。然后,可以使用jox.jar库中的`JDOMBuilder`类来创建一个基于JavaBean的XML Document对象。例如,假设有一个名为`...

    简易三相电源调压电路

    此外,电路还配置了JOX-3C型继电器,它的线圈电压220V,触点电流5A,负责控制电压调节过程。同时,使用SZD和JZD两个指示灯,分别表示升压和降压状态,以直观地反映调压器的工作状况。 总的来说,简易三相电源调压...

    codeblocks汉化包

    最新版的汉化包,具体方法参考 http://wenku.baidu.com/link?url=HgDsU5kqNAXIf5jTGdJo3ax1uppYJb_JOX2nKE7Bc_Y4lIDmB_LoeTIf76bpEVMn8xdgid2eqIHgpGLNzxvZZ7ky4VzgqgISdse_gqcD09O

Global site tag (gtag.js) - Google Analytics