Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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
将图像作为Base64.encodeToString从android发送到c#如何获取该图像_Android_C# 4.0_Android File - Fatal编程技术网

将图像作为Base64.encodeToString从android发送到c#如何获取该图像

将图像作为Base64.encodeToString从android发送到c#如何获取该图像,android,c#-4.0,android-file,Android,C# 4.0,Android File,从我的android应用程序中,我向C#服务器发送一个图像,将其转换为Base64 @Override public void onPictureTaken(byte[] data, Camera camera) { String image = Base64.encodeToString(data, Base64.DEFAULT); sendtoserver(image); } 我从服务器端收到一个字符串,但不知道如何转换和保存它。要获得帮助,请告诉我如何转

从我的android应用程序中,我向C#服务器发送一个图像,将其转换为Base64

@Override
public void onPictureTaken(byte[] data, Camera camera) 
    {
    String image = Base64.encodeToString(data, Base64.DEFAULT);
    sendtoserver(image);
    }
我从服务器端收到一个字符串,但不知道如何转换和保存它。要获得帮助,请告诉我如何转换它并将其保存在C中#


您是否尝试使用
Convert.FromBase64String(字符串s)

资料来源:

更新(在此处发布,而不是在注释中发布,因为代码会显示得更好) 您的Base64表示法不正确。对于您在注释中给出的图像,Base64表示形式的长度为339801个字符

我使用以下代码生成Base64表示:

string path = @"C:\1XlqZF2.jpg";
Image img = Image.FromFile(path);
byte[] arr;
using (MemoryStream ms = new MemoryStream())
{
  img.Save(ms, ImageFormat.Jpeg);
  arr =  ms.ToArray();
}

String b64 = Convert.ToBase64String(arr);

您使用的
Base64
类是什么?我在MSDN上找不到它。

是的,我找到了。当我试图转换该字符串时(下面给出),在转换System.FormatException时出现错误:输入不是有效的Base-64字符串,因为它包含一个非Base-64字符、两个以上的填充字符或填充字符中的非空白字符。在d:\ABCDED\AndroidService\App\u Code\AndroidService.cs中的System.Convert.FromBase64String(字符串s)处的AndroidService..ctor()处,我也尝试了第24行,但得到了一个异常:Base-64字符数组的长度无效。你能首先提供你正在编码的图像吗,所以我们可以检查base64编码是否正确?转换代码/9j/4RNGRXHPZGAASUKQAAAAAAAAAAAABABABAAABAAAWAMAAA8BAGAIAAABABABABABABABABABAAAAQAABABABABABAAAABABABBAAA0AABABABSBBBABAAAAAAAAAAAAABABABAAABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAAABABABABABAAAAAAABABABABABABABABABABABABABABABABAAAAAAAAABABABABABABABABABABABABABABABABA,它被代理阻止了。你能把它放在imgur上吗?谢谢。请检查以下内容:
string path = @"C:\1XlqZF2.jpg";
Image img = Image.FromFile(path);
byte[] arr;
using (MemoryStream ms = new MemoryStream())
{
  img.Save(ms, ImageFormat.Jpeg);
  arr =  ms.ToArray();
}

String b64 = Convert.ToBase64String(arr);