【发布时间】:2018-02-24 16:48:52
【问题描述】:
我正在尝试将 xml 格式的数据解码为字节 base64,但我遇到了问题。我的方法是在 java 中,它采用 String 数据并将其转换为 bytes,如下所示。
String data = "......"; //string of data in xml format
byte[] dataBytes = Base64.getDecoder().decode(data);
失败并给出如下异常。
java.lang.IllegalArgumentException: Illegal base64 character 3c
at java.util.Base64$Decoder.decode0(Base64.java:714)
at java.util.Base64$Decoder.decode(Base64.java:526)
at java.util.Base64$Decoder.decode(Base64.java:549)
at XmlReader.main(XmlReader.java:61)
xml格式与base64不兼容吗?
【问题讨论】:
-
好吧,
data是什么? -
它看起来像这样:
1.0 -
那是不是 base64 编码的字符串。
-
如何改成base64字符串?我需要使用编码吗?
-
是的,当然。你有一些人类可读的数据,就像你迄今为止展示的那样,然后你
encode它到 base64,它只会有允许的 base64 字符,然后你decode那个 base64 字符串再次变成原始内容。
标签: java encoding utf-8 base64 decoding