0
데이터베이스에서 가져온 이미지 경로에 이미지를 저장하고 싶지만 '메모리 부족'오류가 발생합니다. 다음 코드가 잘못 되었습니까?비트 맵 메모리 부족 오류
cmd.CommandText = "SELECT imageColumn FROM PhotoTable WHERE id= :id";
cmd.ClearParameters();
cmd.Parameters.AddWithValue(":id", Id);
cmd.ExecuteDataReader();
if(cmd.DataReader.Read())
{
var lob = cmd.ExecuteReader().GetOracleLob(0);
var image = new Bitmap(lob);
picturebox1.Image = image;
picturebox1.SizeMode = PictureBoxSizeMode.StretchImage;
}
filePathName="c://image1.jpeg"//save path and file name
var bm = new Bitmap(picturebox1.Image);
bm.Save(filePathName, System.Drawing.Imaging.ImageFormat.Jpeg);
메모리 부족은 GDI + (Bitmap에서 사용)의 일반적인 오류입니다. 실제 메모리 부족 조건 일 필요는 없습니다. 대부분 이미지가 손상되었거나 지원되지 않는 형식 (또는 크기 또는 기타) 일 가능성이 큽니다. 바이트를 직접 디스크 ('File.WriteAllBytes')에 저장하고 파일의 종류를 확인하십시오. – Luaan
... DB로 변환하여 저장했을 때 이미지가 손상된 경우에도 오류가 발생합니다 – Plutonix
루트에 대한 쓰기 권한이 없을 수 있습니다. – TaW