加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

做数据格式转换的DatatypeConverter类的例子程序

发布时间:2020-12-16 09:18:50 所属栏目:百科 来源:网络整理
导读:转自:http://www.concretepage.com/java/example_datatypeconverter_java 参考:Class DatatypeConverter If we need to convert XML schema data types,then we need to through knowledge of xml schema data type and lexical representation. DatatypeC

转自:http://www.concretepage.com/java/example_datatypeconverter_java

参考:Class DatatypeConverter


If we need to convert XML schema data types,then we need to through knowledge of xml schema data type and lexical representation. DatatypeConverter class of the packagejavax.xml.bindcan do all to convert xml schema data type to java data type. DatatypeConverter has print and parse methods.printmethod encodes the data into lexical representation of xsd. Andparsemethod can decode the lexical representation to string.

【yasi】printXXX 的函数就是encode,parseXXX 的函数就是decode。比如,String printBase64Binary(byte[])就是将字节数组做base64编码,byte[] parseBase64Binary(String) 就是将Base64编码后的String还原成字节数组。

注意,下面代码第10行,传给printBase64Binary 的参数是 s1.getBytes(),而不是 s1 本身。

DatatypeConverterTest.java

    Find the sample example.
    package com.concretepage;
    import java.util.Calendar;
    import javax.xml.bind.DatatypeConverter;
    public class DatatypeConverterTest {
    public static void main(String[] args) {
    //Testing DatatypeConverter.printBase64Binary
    String s1 = "Testing DatatypeConverter.printBase64Binary";
    String encodeds1 = DatatypeConverter.printBase64Binary(s1.getBytes());
    System.out.println(encodeds1);
    byte[] decodeds1= DatatypeConverter.parseBase64Binary(encodeds1);
    System.out.println(new String(decodeds1));
    //Testing DatatypeConverter.printHexBinary
    String s2 = "Testing DatatypeConverter.printHexBinary";
    String encodeds2 = DatatypeConverter.printHexBinary(s2.getBytes());
    System.out.println(encodeds2);
    byte[] decodeds2= DatatypeConverter.parseHexBinary(encodeds2);
    System.out.println(new String(decodeds2));
    //Lexical representation of date time
    System.out.println(DatatypeConverter.printDateTime(Calendar.getInstance()));
    }
    }

Output

VGVzdGluZyBEYXRhdHlwZUNvbnZlcnRlci5wcmludEJhc2U2NEJpbmFyeQ==
Testing DatatypeConverter.printBase64Binary
54657374696E6720204461746174797065436F6E7665727465722E7072696E7448657842696E617279
Testing DatatypeConverter.printHexBinary
2013-03-15T18:23:25.830+05:30

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读