我想將位圖圖像保存到手機內的目錄(圖庫)。該應用程序正在Xamarin開發,因此代碼是C#。將位圖保存到文件 - Xamarin,Monodroid
我似乎無法弄清楚如何製作一個目錄,並保存一個位圖。有什麼建議麼?
public void createBitmap(View view){
view.DrawingCacheEnabled = true;
view.BuildDrawingCache (true);
Bitmap m_Bitmap = view.GetDrawingCache(true);
String storagePath = Android.OS.Environment.ExternalStorageDirectory.AbsolutePath;
Java.IO.File storageDirectory = new Java.IO.File(storagePath);
//storageDirectory.mkdirs();
//save the bitmap
//MemoryStream stream = new MemoryStream();
//m_Bitmap.Compress (Bitmap.CompressFormat.Png, 100, stream);
//stream.Close();
try{
String filePath = storageDirectory.ToString() + "APPNAME.png";
FileOutputStream fos = new FileOutputStream (filePath);
BufferedOutputStream bos = new BufferedOutputStream(fos);
m_Bitmap.Compress (Bitmap.CompressFormat.Png, 100, bos);
bos.Flush();
bos.Close();
} catch (Java.IO.FileNotFoundException e) {
System.Console.WriteLine ("FILENOTFOUND");
} catch (Java.IO.IOException e) {
System.Console.WriteLine ("IOEXCEPTION");
}
你是怎麼寫出來的原始數據BMP不壓縮? – gonzobrains 2016-06-29 18:03:04
@gonzobrains我不知道這是可能的。抱歉。 – kaolick 2016-06-30 07:18:13
您應該使用「.Dispose()」從內存中釋放蒸汽和位圖,或者使用「using(){}」可能會更好。 – 2017-10-07 21:57:18