Tôi có hình ảnh với src = "data:image/png;base64...."
.C# chuyển đổi dữ liệu hình ảnh thành mảng byte
Tôi muốn chuyển đổi hình ảnh này thành mảng byte byte[]
.
Tôi đã thử một cái gì đó như thế này:
string[] Base64 = ImageData.Split(new char[] { ',' });
byte[] imageBytes = System.Convert.FromBase64String(Base64[1].ToString());
Nhưng tôi nghĩ tôi đang làm một cái gì đó sai ở đây.
Vui lòng trợ giúp.
CẬP NHẬT:
Dưới đây là cách tôi cố định nó:
var base64Data = Regex.Match(ImageData.ImageURL, @"data:image/(?<type>.+?),(?<data>.+)").Groups["data"].Value;
byte[] imageBytes = Convert.FromBase64String(base64Data);
Điều gì không hiệu quả? –
Trông rắn. Điều gì đang xảy ra nếu bạn chạy điều này trên dữ liệu đầu vào của bạn? Ngoài ra, bạn có chắc chắn không có dấu ngoặc đơn hoặc tương tự có thể ảnh hưởng đến giải mã BASE64 không? Dữ liệu CSS-URI thường được kết thúc bằng dấu đóng ngoặc đơn. – PeterK
Bạn có nhận được bất kỳ ngoại lệ/lỗi nào không? – Tushar