如何创建ByteArray的base64Binary表示?

时间:2014-10-27 09:37:13

标签: java android xml

我在Android客户端上为Restful服务工作。总之,我必须发送一个如下所示的请求:

<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>
<RSAKeyValue xmlns=\"http://www.w3.org/2000/09/xmldsig#\">
    <Modulus>AKbIANPft2ug1a9Dht9GENdd5HtSdaEngCkbPYlz2syeulOpYJrS9UhRxvfWIlSPB3G1tJEGS5mibQtLcDS9zlnwsg8IoJ8Pq9Dd8XWmBa6oUYeotjA90YhC5F06085yew8nqPTOikdhpmBJT7AAmp9elnkSoVASD0WQnn1KqkCR</Modulus>
    <Exponent>AQAB</Exponent>
</RSAKeyValue>

模数和指数都是ByteArray s,但是当它们通过Marshaller时,它们看起来就像上面一样。如果我传递给OutputStream一个简单的ByteArray,我的请求如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RSAKeyValue xmlns="http://www.w3.org/2000/09/xmldsig#">
    <Modulus>[B@b2f43ee0</Modulus>
    <Exponent>[B@b2f43f90</Exponent>
</RSAKeyValue>

服务器无法处理。 所以我的问题是,如何获得这些字符串?

1 个答案:

答案 0 :(得分:1)

解决了!

import android.util.Base64;

Base64.encode(<data>, Base64.DEFAULT)