我正在将图像从我的 android 上传到我的网络服务器。我的 Web 服务器是用 ASP.NET MVC 编写的。
我可以在 android 上使用 HttpPost 上传我的图像,然后使用以下 php 代码:
$base=$_REQUEST['image'];
$binary=base64_decode($base);
header('Content-Type: bitmap; charset=utf-8');
$file = fopen('App_Data/Image.jpg', 'wb');
fwrite($file, $binary);
fclose($file);
我的问题是,是否可以将其转换为我的 ASP.NET MVC?我觉得使用 php 非常有限,因为我不确定如何做一些我可以在 ASP.NET 中做的事情。
我了解 ASP.NET 中的 Request 方法,但我不确定如何执行 base64_decode 部分。
PS。有关所用方法的更多信息,请参阅此链接
编辑: android部分的代码
这部分转换位图并base64对其进行编码
Bitmap bitmap = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory().getAbsolutePath()+"/saved_images/2013-04-10--11-51-33-AEST--Fingerprint.jpg");
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 90, stream); //compress to which format you want.
byte [] byte_arr = stream.toByteArray();
String image_str = Base64.encodeBytes(byte_arr);
ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("image",image_str));
这部分做post
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://myipaddress/Up/Upload");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);