我在java / c#中遇到图像问题。 我想从我的Android设备发送图像并将其接收到我的c#应用程序。 这是我的android代码:
private void sendVideo(ByteArrayOutputStream rawImage)
{
byte[] byteArray2 = rawImage.toByteArray();
byte[] byteArray;
String test = Base64.encodeToString(byteArray2, Base64.DEFAULT);
byteArray = test.getBytes();
String metaData = String.valueOf(clientID)+String.valueOf(videoCounter);
byte[] metaDataBuff = metaData.getBytes();
if (UDP) {
udpBuffSend = new byte[60000];
System.arraycopy(metaDataBuff, 0, udpBuffSend, 0, 8);
System.arraycopy(byteArray, 0, udpBuffSend, 8, byteArray.length);
这是我的c#代码:
string Base64ImageData = Convert.ToBase64String(udpBuff, 8, udpBuff.Length - 8);
byte[] imageBytes = Convert.FromBase64String(Base64ImageData);
MemoryStream ms = new MemoryStream(imageBytes, 0,
imageBytes.Length);
ms.Write(imageBytes, 0, imageBytes.Length);
masterPicture.Image = Image.FromStream(ms,true);
但它抛出异常“无效的参数”。 问题是什么? 感谢。
答案 0 :(得分:0)
尝试这样的事情:
byte[] imageBytes = Convert.FromBase64String(Base64ImageData);
Image image;
using (MemoryStream ms = new MemoryStream(imageBytes))
{
image = Image.FromStream(ms);
}
masterPicture.Image = image;