Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 类型转换:字节[]到字符串,字符串到字节[]_Java_Android_Type Conversion - Fatal编程技术网

Java 类型转换:字节[]到字符串,字符串到字节[]

Java 类型转换:字节[]到字符串,字符串到字节[],java,android,type-conversion,Java,Android,Type Conversion,出于教育目的,我尝试使用Android的摄像头获取照片,并使用SOAP将其发送到Web服务 首先,摄像头向我发送一个字节[]数组,但这是不可序列化的,我无法将其发送到Web服务。现在我尝试将其转换为字符串(此类型可序列化),并在Web服务中将此字符串重新转换为字节[]数组 我怎么能做到 例如,我正在尝试: request.addProperty("photo", (Arrays.toString((byte[])params[0]))); 如何获取该字符串并将其转换为原始的字节[] 提前谢谢

出于教育目的,我尝试使用Android的摄像头获取照片,并使用SOAP将其发送到Web服务

首先,摄像头向我发送一个
字节[]
数组,但这是不可序列化的,我无法将其发送到Web服务。现在我尝试将其转换为
字符串
(此类型可序列化),并在Web服务中将此
字符串
重新转换为
字节[]
数组

我怎么能做到

例如,我正在尝试:

request.addProperty("photo", (Arrays.toString((byte[])params[0])));
如何获取该
字符串
并将其转换为原始的
字节[]


提前谢谢

如果确实需要将
字节[]
转换为
字符串
,请使用用于任意字节数据的中间序列化,例如<代码>字符串s用于字符数据,而不是任意的
byte[]
s

使上述内容变得微不足道


这个问题几乎是重复的。

如果您的web服务只支持ASCII输入,您可以在base 64中对数据进行编码:

最后,我使用它将字节[]发送到web服务并对其进行解码。 谢谢

ANDROID SOAP服务:

request.addProperty("photo", Base64.encodeToString((byte[])params[0], Base64.DEFAULT));
SOAP Web服务

BASE64Decoder decoder = new BASE64Decoder();                    
byte[] a = decoder.decodeBuffer(VAR);

将其转换为图像格式并序列化会不会更容易?
字节[]
不可序列化?序列化正是转换为
字节[]
…我建议您使用
字节[]
而不是
字节[]
,因为后者效率较低。顺便说一句,字节[]是可序列化的,您可以按原样发送。感谢您提供更快的答案。当我尝试发送byte[]Android时。。。06-16 22:10:18.787:W/System.err(19363):java.lang.RuntimeException:无法序列化:[B@41180398