我正在尝试出于教育目的,使用 Android 相机拍摄照片并使用 SOAP 将其发送到网络服务。
首先,相机向我发送了一个 byte[]
数组,但这不是可序列化的,我无法将其发送到网络服务。现在我试图将其转换为 String
(此类型是可序列化的),并在网络服务中将此 String
重新转换为 byte[]
数组。
我该怎么做?
例如,我正在尝试:
request.addProperty("photo", (Arrays.toString((byte[])params[0])));
如何获取此 String
并将其转换为原始且完全相同的 byte[]
?
提前致谢!
最佳答案
如果您确实需要将 byte[]
转换为 String
,请使用用于任意字节数据的中间序列化,例如 Base64 . String
用于字符数据,而不是任意的 byte[]
。
Android's Base64
class使上述变得微不足道。
这个问题几乎是 Android: using Base64 to encode an Image to String 的重复.
关于java - 类型转换 : Byte[] to String, String to Byte[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17137173/