![]() |
1
19
如果用base64编码,这将把任何数据转换成ASCII安全文本,但是base64编码的数据比原始数据大。 |
![]() |
2
35
String(byte[]) 将数据视为默认字符编码。因此,如何将字节从8位值转换为16位Java Unicode字符将不仅在操作系统之间发生变化,而且甚至可以在同一台机器上使用不同代码页的不同用户之间变化。此构造函数只适用于解码您自己的文本文件之一。不要尝试将任意字节转换为字符爪哇! 编码为 base64 是一个很好的解决方案。这是通过SMTP(电子邮件)发送文件的方式。(免费)阿帕奇 Commons Codec 项目将完成这项工作。
或者,您可以使用Java 6。 DatatypeConverter :
|
![]() |
3
2
看到这个问题, How do you embed binary data in XML? 不要将byte[]转换为字符串,然后将其推送到XML中的某个地方,而是通过base64编码将byte[]转换为字符串(有些XML库有一个类型可以为您这样做)。一旦从XML中得到字符串,base64就会解码。 使用 http://commons.apache.org/codec/ 由于各种奇怪的字符集限制和非priting字符的存在,您的数据可能会变得混乱。斗杆w/base64。 |
![]() |
4
0
如何构建XML文档?如果使用Java的内置XML类,则应该为您处理字符串编码。 看看javax.xml和org.xml包。这就是我们用来生成XML文档的方法,它可以很好地处理所有的字符串编码和解码。 ---编辑: 嗯,我想我误解了这个问题。您不是要对一个常规字符串进行编码,而是要对一组任意的二进制数据进行编码?在这种情况下,在前面的注释中建议的base64编码可能是可行的方法。我认为这是用XML编码二进制数据的一种相当标准的方法。 |