<?xml version="1.0" encoding="utf-8" ?> 
<?xml version="1.0" encoding="utf-8" ?> 
  <base64Binary xmlns="http://www.digital-star.com.cn/">
H4sIAJXSH4kA/7VYWVMbRxB+T1X+g0qvKaxdiU
OoxLgqcR5SIXESk+tRFmtbVUhydBjyJiAYBBYgm8Mxlx1jkwpGIBODkMD
+M5pd7b9I7yGpR6vBKWq2yoV3Zrq/6e7pnlF/4esT8THPAyWVjiUT
Q175muS9Tj79JHwjkoncUjLw6fGEJ9KhdPSeEo94YqND3m+VcXvV6wHl
RHrIa3+EJuD7XiZzP+TzjY+PXxsPXEum7vr8kiT7fvlm+JaJ0ZSNp
0cBZcibTSVs9HRPPBZNJdPJO5meaDIeArkeS8pr2mFZoowpcSWR8SQic
YU1xpINfZW2Z4a8mVRWac3/mFa+yKZSoDucjEbGFHvZhrbAYdv7Y8
rEyO/3lda8vXIvGYsqnngscTMazabAUQmQIxPNUTZxO5lNjCqjXqTYze
KRyO0xhRW6bO/2elr5Laskos7FbrvUq1VafKqdr9GlU68nA5hDXgM
jk4ol7no73PD9P8jKgbo2S/ee0OWCIMjGQlk0JJ3bBzB1bk2rHYnzXc3
tAbAoE2er2sqOuv5K3dxBkJCkykgsrlwRdOaNelRsVPfrtQvwW3s+K
cramZN6ba1xOFmvnQg8Jowq7JjAfX3/KQKLJTJXTPaLJ3R7QZRZf1TE
ganlfOPwgC691HeOxYUNskYQmJY/U0vz8Je+F5WC6typVi7QzSO6ld
M2J2llii5+oI+qLsA3Dl9rtYfWt6iALB7VL5Zcsx7Du2C9+mIOSlToQ
JDlmvirlT1JA+oWlXkLb35t56bNqwUVrpaKdd4PQmGqtMzgiDBxMZp
UfBbYoOundHlIt24oA9nrLwVa3MLvnQCz7WRtMJqolHapaVneB9t+aG
2UhaVbcer9P2Cml/QagcuQAotNm3rpVpYFVoZeu6Zdp4XW2yv1uh8W
Z8t6n9tCbXSURkCHDePx6oLPOPOJvqf7m1CC6v1i4ILbxKGt/8uF7S9
I1E5/aIE5W1d0FajI/SYtf0FuKNdCw6GdyE49UqNzm9bwKKu08kV7bh
mRFpo89dE1VbeNQ5Flb06/6SxeCo0HyxIeKC0qTN33iu8gxs/cBG8G
z8RrZDDO3u+JNZit0oQw7txP+1BWu+KvZNMSOvY3MlBvIMbtx6CdyMHH
+/qKzl1/URf/1eUxRsVLT97BbCwj8/WmWs8ps9ctI3A9KOvxT+2yc
ruOA4EyxaTXrXGo7E7d+6mQtZ/kfhVyFhbx4L4mE5zo54HcovFbZO2b
X9MWtRjW2fQzOaE3GJvU8nxm6lRJWXEHMcGE52kt1eSpYA82D8gBaX
+sI9ZxEqIyiTqzFwjf0j3VkAezyN5zFMyBx7uoBvZRYs1JHLYZ39hRUQ
CEr8kDfZIco8UHJGlEPwLDH4mBUOSFPYxcljfwfcRfwC8H2h6Lw/2
DoK6U4wBYbg90mcosFM8aQioDPsFZHkw2C/7ZX+HKhtwi5gjch94ZH/j
4zDJNqLnpuAA4BSsIVY3CTSir36AL0CwhjjSiBQj6ttj+mgdgo4nW
WMgGuRr0xTjC61h9qrjMDkkFKFnH+qVTZiCHXkyHBx8EZJ6tUgL6w4cR
gZbyqGViL71mL7dgHHYx5Xh4DB7QQzr1TcOHJ49mCiyCjHYLkRm0a
lkUkHkp5acNcZyiN8hwyCHxzhFEWlDfoaUxGPsNGJiyHfgIB4jOR4TQu
juHl1+ZAaHK3MJDnq+DbcvW8aJy6E1yK+Qyrw1HEVEMpjRxmOOnH1
mRq33ofN0SuDoIs6B/ADRxWMmKm0igXxphAGN8akidoAEegPmvYjnHJj
2fQl3kyTL/v4mtPMavbylt/JYavv9EXE+cEcbTwxI877u6wrcKe4A
dv40JvrUoT5dsVOSI8PBwb+BIbX/oYs7hs7MG1rK03KOBWSE8alzunLw
dSAg+w0vuSIYhtN9E326SE+3rfuIJ8PBYf07fw4FBs8C6yJXnvnd0
O6tiT75rn6WZ0EYAVy5bAdN6FyRzhw0tgtQuB1L3bSsDhmez4AUCAQgbw
aQnr2I6xf1wBB90ApK8LQz0w7xrv0t+b6p1n2Zg8KcCX7XeDIcHP
Y92tigp1sOHO57hLpS8nnLe2vs3M+ZS3RlmZbLZr5xZTg4TP6o8LU1z+Y
JVxgnMOoijZtMlnr9vZCneNoh3rVDJDeaat2XOShsNJpVw0Jxq4/
T7rWjweJwTxH1dUYq+6Wgf0Ae6OuTgxBFvNjujMzOodUQdTQbYV9HBwSz
YV9T4j/VBuMUDyMAAA==</base64Binary>
转为二进制数 怎么转
我需要得到2进制 byte[] 的形式才能进行下一步操作 进行解压的过程。

解决方案 »

  1.   

    把base64Binary里面的String拿出来,这个String就是Base64String,再使用Base64.decode(String base64String)直接就得到了byte[]了。参考:http://blog.csdn.net/zhiqiangzhan/archive/2009/10/12/4657571.aspx
      

  2.   

    http://c4lijie.5d6d.com/redirect.php?tid=179&goto=lastpost这里有你需要的答案
      

  3.   


    不行啊。。我试了 得到后的byte[]
    我用
    public static byte[] unZip(byte[] data) {
      byte[] b = null;
      try {
       ByteArrayInputStream bis = new ByteArrayInputStream(data);
       ZipInputStream zip = new ZipInputStream(bis);
       while (zip.getNextEntry() != null) {
        byte[] buf = new byte[1024];
        int num = -1;
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        while ((num = zip.read(buf, 0, buf.length)) != -1) {
         baos.write(buf, 0, num);
        }
        b = baos.toByteArray();
        baos.flush();
        baos.close();
       }
       zip.close();
       bis.close();
      } catch (Exception ex) {
       ex.printStackTrace();
      }
      return b;
     }
    这个方法就解压不了 while 条件都进不去……
      

  4.   

    你确定你得到的byte[]是经过zip压缩过的吗,而不是其他的压缩方式,比如gzip,或者根本没有被压缩。
      

  5.   


    c# webservice 
    内容是返回一个ds。 
    我们都知道返回的webservice 是以xml文件的形式展现给我们的。 
    dataset 值c#里的数据集 好比与table集合 
    webservice 方法里面是这样处理dataset ds的 。 
    如果 
    return ds; 
    则在web浏览器 访问是这种形式的: 
    XML code
    <?xml version="1.0" encoding="utf-8" ?> 
    - <DataSet xmlns="http://www.digital-star.com.cn/">
    - <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    - <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
    - <xs:complexType>
    - <xs:choice minOccurs="0" maxOccurs="unbounded">
    - <xs:element name="Table">
    - <xs:complexType>
    - <xs:sequence>
      <xs:element name="人员编号" type="xs:string" minOccurs="0" /> 
      <xs:element name="中文姓名" type="xs:string" minOccurs="0" />
     <xs:element name="撤销时间" type="xs:string" minOccurs="0" /> 
      <xs:element name="相片" type="xs:string" minOccurs="0" /> 
      </xs:sequence>
      </xs:complexType>
      </xs:element>
      </xs:choice>
      </xs:complexType>
      </xs:element>
      </xs:schema>
    - <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
    - <NewDataSet xmlns="">
    - <Table diffgr:id="Table1" msdata:rowOrder="0">
      <人员编号>123465345</人员编号> 
      <中文姓名>张良</中文姓名> 
      <英文姓名 /> 
      <别名或绰号 /> 
      <性别>1</性别> 
      <出生日期>2009-01-08T10:10:39+08:00</出生日期> 
    <移交地址省市县区>张家口</移交地址省市县区> 
      <移交地址详细地址>潍坊市</移交地址详细地址> 
      <撤销时间>19520827175518</撤销时间> 
      </Table>
      </NewDataSet>
      </diffgr:diffgram>
      </DataSet> 
    如果处理ds 则返回: 
    XML code<?xml version="1.0" encoding="utf-8" ?> 
      <base64Binary xmlns="http://www.digital-star.com.cn/">H4sIAJXSH4kA/7VYWVMbRxB
    ……
    ……
    VBuMUDyMAAA==</base64Binary> 
    处理的方法是这样的 
    C# code
          MeoryStream ms=new MemoryStream();
          XmlSerializer ser = new XmlSerializer(typeof(DateSet));
          ser.Serialize(ms,ds);
          return CompressionHelper.Compress(buffer);C# code
           CompressionHelper.Compress(byte[] bytesToCompress){//方法内容:
           MeoryStream ms=new MemoryStream();
           Stream s = OUtputStream(ms);
           s.Write(bytesToCompress,0,bytesToCompress.Length);
           s.Close();
           retrun ms.ToArray();
    }问题: 
    我现在要把 
    <?xml version="1.0" encoding="utf-8" ?> 
      <base64Binary xmlns="http://www.digital-star.com.cn/">H4sIAJXSH4kA/7VYWVMbRxB
    ……
    ……
    VBuMUDyMAAA==</base64Binary> 返回的结果给解出来 
    webservice 是不变的。我要在java程序上面解返回的xml文件 
    也就是我怎么处理 
    H4sIAJXSH4kA/7VYWVMbRxB 
    …… 
    …… 
    VBuMUDyMAAA==
    这个。。 
    是被压缩了。 
    我如何的处理解压并且在java 或者J2ME 处理成的是dataset的形式! 
    注:C# webservice 不变 默认的返回就是 
    <?xml version="1.0" encoding="utf-8" ?> 
      <base64Binary xmlns="http://www.digital-star.com.cn/">H4sIAJXSH4kA/7VYWVMbRxB
    ……
    ……
    VBuMUDyMAAA==</base64Binary>我要处理这个! 
    高分给出。希望能够解决
      

  6.   

    如果你的数据是通过HTTP得到的,那么很有可能你的数据是经过GZIP压缩的,不是ZIP, 你试试GZIP解压数据试试。参考:http://blog.csdn.net/zhiqiangzhan/archive/2009/10/26/4728127.aspx
      

  7.   

    浏览器能自动处理GZIP压缩过的数据。
      

  8.   


    亲爱的哥哥 找到了主要原因 就是这个原因。。
    到此这个问题已经解决 谢谢你的回答
    我就是要把这些包包 给放到J2ME上去。。用手机处理返回的数据。
      

  9.   

    问题解决 展现给我的就是 
    xml文件的格式。。
    多谢