>백엔드 개발 >C++ >ASP.NET에서 Base64로 인코딩된 이미지 문자열을 이미지로 변환하는 방법은 무엇입니까?

ASP.NET에서 Base64로 인코딩된 이미지 문자열을 이미지로 변환하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2025-01-05 19:58:41176검색

How to Convert a Base64 Encoded Image String to an Image in ASP.NET?

Base64로 인코딩된 이미지 문자열을 이미지로 변환

제공된 ASP.NET 코드 조각은 URL에서 이미지를 저장하려고 시도합니다. 하지만 제공된 URL이 직접 이미지 URL이 아닌 Base64로 인코딩된 문자열이기 때문에 문제가 발생했습니다.

이 문제를 해결하려면 Base64 문자열을 바이너리 데이터로 디코딩한 후 이미지 개체를 생성해야 합니다. 바이너리 데이터에서. 다음은 코드 수정 방법에 대한 예입니다.

protected void SaveMyImage_Click(object sender, EventArgs e)
{
    // Get the Base64 encoded image string from the hidden input field
    string base64ImageString = Hidden1.Value;

    // Convert the Base64 string to binary data
    byte[] imageBytes = Convert.FromBase64String(base64ImageString);

    // Create a memory stream from the binary data
    using (MemoryStream ms = new MemoryStream(imageBytes))
    {
        // Create an Image object from the memory stream
        Image image = Image.FromStream(ms);

        // Save the image to the specified location
        string saveLocation = Server.MapPath("~/PictureUploads/whatever2.png");
        image.Save(saveLocation);
    }
}

비트맵 예외 처리에 대한 추가 참고 사항

"GDI에서 일반 오류가 발생했습니다." Base64 문자열을 디코딩하려고 할 때 예외가 발생하는 경우 바이트가 비트맵 이미지를 나타내기 때문일 수 있습니다. 이 문제를 해결하려면 메모리 스트림을 삭제하기 전에 이미지를 저장하세요.

// Create a memory stream from the binary data
using (MemoryStream ms = new MemoryStream(imageBytes))
{
    // Save the image to the memory stream
    image.Save(ms, System.Drawing.Imaging.ImageFormat.Png); // Replace "Png" with the appropriate image format

    // Create an Image object from the memory stream
    image = Image.FromStream(ms);

    // Dispose the memory stream
    ms.Dispose();
}

위 내용은 ASP.NET에서 Base64로 인코딩된 이미지 문자열을 이미지로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.