DB에 이미지를 저장하는 것에 익숙합니다. 매우 직설적이라고 생각 했는데도 그렇지 않았습니다. 내가 뭘 하려는지 모든 형식으로 같은 컴퓨터에서 이미지 파일을 읽고, 그림 상자에 표시하고 바이트로 이미지를 변환하여 DB에 저장합니다. 지금까지 그림 상자에 이미지를 표시 할 수 있지만 이미지를 바이트로 변환 할 수는 없습니다. 내 코드는 다음과 같습니다.이미지를 바이트로 변환 할 수 없습니다. [] C#
private void DisplayImage()
{
if (openFileDialog.ShowDialog(this) == DialogResult.OK)
{
try
{
Stream file;
if ((archivo = openFileDialog.OpenFile()) != null)
{
using (file)
{
pictureBox.Image = Image.FromStream(file);
}
}
}
catch (Exception ex)
{
...
}
}
}
그림 상자에 이미지를 표시하는 간단한 방법입니다. 진짜 문제는 다음과 같은 방법입니다 : 무슨 일이야에
System.Runtime.InteropServices.ExternalException: A generic error occurred in GDI+.
어떤 아이디어 :
public static byte[] ConvertImageToBytes(Image image)
{
if (image != null)
{
MemoryStream ms = new MemoryStream();
using (ms)
{
image.Save(ms, ImageFormat.Bmp);
byte[] bytes = ms.ToArray();
return bytes;
}
}
else
{
return null;
}
}
가 메모리 스트림에 이미지를 저장하려고, 나는 오류가?
오류는 항상 일어나고, 또는 드물게, 또는 오랜 시간 동안 응용 프로그램을 사용하여 이후 : 나를 위해 일한
하나 개의 솔루션은이 같은 이미지의 복사본을 만드는 것입니다? – Chris
첫 번째 방법에서는 'file'변수를 할당하지 않습니다 ...이 코드는 실제 코드의 추출물이라고 가정합니다. 그렇지 않으면 컴파일러는 할당되기 전에 'file'변수가 사용되었다고 불평 할 것입니다. –