android - Base64 元素(来自 xml)太大而不能存储在字符串中?

标签 android xml string base64

下面是我的一个网络服务的返回(它是 base64 格式的 pdf):

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <ns2:getVoucherResponse xmlns:ns2="http://mywebservice.com/">
         <voucher>JVBERi0xLjMKMSAwIG9iago8PCAvVHlwZSAvQ2F0YWxvZwovT3V0bGluZXMgMiAwIFIKL1BhZ2Vz
IDMgMCBSCi9PcGVuQWN0aW9uIDggMCBSID4+CmVuZG9iagoyIDAgb2JqCjw8IC9UeXBlIC9PdXRs
aW5lcyAvQ291bnQgMCA+PgplbmRvYmoKMyAwIG9iago8PCAvVHlwZSAvUGFnZXMKL0tpZHMgWzYg
MCBSCjE4IDAgUgpdCi9Db3VudCAyCi9SZXNvdXJjZXMgPDwKL1Byb2NTZXQgNCAwIFIKL0ZvbnQg
PDwgCi9GMSA5IDAgUgovRjIgMTIgMCBSCj4+Ci9YT2JqZWN0IDw8IAovSTEgMTAgMCBSCi9JMiAx
MSAwIFIKL0kzIDEzIDAgUgovSTQgMTUgMCBSCi9JNSAxNyAwIFIKL0k2IDIwIDAgUgo+Pgo+Pgov
TWVkaWFCb3ggWzAuMDAwIDAuMDAwIDU5NS4yODAgODQxLjg5MF0KID4+CmVuZG9iago0IDAgb2Jq
ClsvUERGIC9UZXh0IC9JbWFnZUMgXQplbmRvYmoKNSAwIG9iago8PAovQ3JlYXRvciAoZG9tcGRm
KQovQ3JlYXRpb25EYXRlIChEOjIwMTIwMTA5MTA0NzEwKzAxJzAwJykKL01vZERhdGUgKEQ6MjAx
MjAxMDkxMDQ3MTArMDEnMDAnKQo+PgplbmRvYmoKNiAwIG9iago8PCAvVHlwZSAvUGFnZQovUGFy
ZW50IDMgMCBSCi9Db250ZW50cyA3IDAgUgo+PgplbmRvYmoKNyAwIG9iago8PCAvRmlsdGVyIC9G
bGF0ZURlY29kZQovTGVuZ3RoIDE3MjEgPj4Kc3RyZWFtCnic3VnNchpHEL7zFHOzXbFH8//jU5DA
llIYHMCuSkU5rGAt4QCLF1Dst/Hr5E2inPMA6f2bXdhZCbglVhlJPd093V//TM+oRTAjBMEnSz+5
RPFt63yMFCZAN4xiqygaT1F3nJClsZgZz4LN+CnFwpG/tKTWWCb64YtKhbUkOadSAlNB0GTROrui
qBO1fm5SA2RBUjWaMKxpna6swUqThH72hsJOGH7+hNDzy4vB8P3gBRp/3hMwDCvGnQBQM4FxOH+N
KvwN9nBOMeFgkHQLu3q6SzQJ1mj6bBvfhstJ+BItwngyQ9MQLaPtGk2i5SaYbMIYMXHGxB0KN9Vt
uQFNgiPNNebW1vXrM/0ZBVv0A+fo+jm5fkGR1uAWohpx8ZQHJKVVP7OgFzAb7YffCKyVdtbwwpqP
gw8Xl90heoXOB33UefbnxWW7/7Zbx10ri7lhdX/eFeis4od1uEyAmYToJloChA+Tu2B5G6LpX2t0
H23iEAVxPLt/CJ2bTUncED1pVGrNAaDUicO3rTyDwSdjCVo4fQVlXqFQDFSgFDLF7+jTE1YrobGh
xkElipy+Wn6K4kWwmQE4l9EmnFej7TaWYrdSwFUGxacY1C8tC5QxmfkGX8XPOauA+KqiQpmrUA6W
1DUlCwkhXaC7W3NO0sJXjOxJFAvEQFMxvgXAQOflxVLDMgyG4eQOMgb+o+0S3f2ToPAanbd7vXbn
qj9Cl4Nxt7dTULlGaRnmRNU1vhv0x++7vd5Vd1hNW2gllKtUjFX6hRNze3xpJRFSLGt12Y9uU80x

[...]

tTpDkmdIevmFgJAzL3/SkhOYUnUaU6nrcEnoRkaIupXDwYdxF3W66KI97A/6L5OdNK346VQrjokV
HtWQG5KZuuqPs/k8BOzfQUNbhfP5DELiU8yh+WtPiIVN0ojVFY/TkBLCuVDAaKk16Ay9Cb6i194N
oJcIxTwbaAZFqeobdBfBLNliUVqOgzCOVlG8+fEmmM+D6Wy5xpNo4dlOmOT4UuV2xUItyRWxefbv
lYVUWb1wUMW05yzacZOyrCvwvV7mX/D2sqyvcJkdvGXbKijzHUrWyEqZ7Pcn2xZXcDIqT9saQl+P
77O2NYMW5utaXGnfVJHUha40LUAoLxyDBTcpZDkbIywrG+HKBkj5MlSHKquDFZZ9r/YJKw5nLvYF
6C2r5EKFLorDjlV0vO8Pm08uOF8gkw36A9z7Cf2KfoPv01ahEnoshfa1gJBgqkrCHI1S83Mq7Myt
x3rksR5aHK+0NscrumIklUeCQcIKYut+jcLbBZzdMNxMw9LBJl8YzGBQ3eALDDuGlYTcF0cVYB85
</voucher>
      </ns2:getVoucherResponse>
   </soap:Body>
</soap:Envelope>

我通过一个简单的 http 协议(protocol)发送我的网络服务请求,并以同样的方式接收响应。 我尝试解析 xml 响应并将答案存储在字符串中,但答案似乎太大了。

最好是先入库element voucher再base64解码?

感谢任何帮助;)!

最佳答案

在android 2.2+ (api 8)上有一个Base64库,但是如果你希望你的项目可以用于早期版本,你可以将代码android to library添加到你的项目中,你有库Base64的源代码.java: http://hi-android.info/src/android/util/Base64.java.html

关于android - Base64 元素(来自 xml)太大而不能存储在字符串中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8790025/

相关文章:

java - NotificationListenerService sendBroadcast 不起作用?

违反 Android Branch IO SDK 政策

xml - 如何在 XML 输出中显示

string - 属性和属性有什么区别?

android - 使用 javafx 和 apache POI 的项目在 dex 期间出错

java - 从 Java/Android 中的 URL 获取域名

java - 使用 XSLT 即 XML 转换器时防止 DTD 下载

java - 需要替换包含 的 xslt 句子。 (点)带有空格

r - 在 dplyr 中使用 c() 聚合字符串汇总或聚合

python - 在 Python 中将 ASCII 字符转换为 Unicode FULLWIDTH 拉丁字母?