不啰嗦谎僻,直接上代碼
byte[]轉(zhuǎn)UIImage
在Xamarin.iOS項(xiàng)目中用。
public UIImage bytesToUIImage(byte[] data){
if (data == null) return null;
GCHandle hObject = GCHandle.Alloc(data, GCHandleType.Pinned);
IntPtr pObject = hObject.AddrOfPinnedObject();
NSData nsdata = NSData.FromBytes(pObject, (System.nuint)data.Length);
UIImage image = UIImage.LoadFromData(nsdata);
if (hObject.IsAllocated)
hObject.Free();
return image;
} catch (Exception e) {
}
return null;
}
byte[]轉(zhuǎn)Image
在Xamarin.Form中用膛锭。
public Image bytesToImage(byte[] data){
var image = new Image();
image.Source = ImageSource.FromStream(() => new MemoryStream(data));
return image;
}
Stream轉(zhuǎn)byte[]
這個(gè)方法哪都能用粮坞,所以順便貼出來。
public byte[] StreamTobytes(Stream stream){
byte[] result;
using (var memoryStream = new System.IO.MemoryStream()) {
stream.CopyTo(memoryStream);
result = memoryStream.ToArray();
}
return result;
}