2013-11-11 3 views
5

У меня есть растровое изображение, которое я хотел бы сохранить на диске, однако мне удалось сохранить его в том же каталоге, что и программа exe.C# сохранить растровое изображение в файл, сохранить ошибку каталога?

Это единственный способ, которым я получил его на работу:

image.save("img.jpg", ImageFormat.Jpeg); 

Я хотел бы сохранить его где-нибудь еще на диске, независимо от того, где программа ехе есть. Ничего из этого не работает: я получаю: Общая ошибка произошла в GDI +.

image.save("C:\\img.jpg", ImageFormat.Jpeg); 
image.save(@"C:\\img.jpg", ImageFormat.Jpeg); 

EDIT: Кстати, можно ли создавать папки тоже? что-то вроде этого? (Я получаю ту же ошибку, как всегда ..)

image.save("foldername/img.jpg", ImageFormat.Jpeg); 

EDIT2: получил его, чтобы сохранить в папку, только если папка Allready существует. Может ли быть вещь разрешения? все, что нужно импортировать?

+0

Можете ли вы показать сообщение об ошибке, которое получаете? – Kurubaran

+0

https://dl.dropboxusercontent.com/u/50868481/fd.png – user2725580

ответ

5

Попробуйте это:

image.save("C:/img.jpg", ImageFormat.Jpeg); 
+0

По-прежнему получаю ту же ошибку. – user2725580

+0

Надеемся, они могут помочь: http://www.codeproject.com/Questions/283361/A-generic-error-occurred-in-GDIplus, http://stackoverflow.com/questions/1053052/a-generic-error -occurred-in-gdi-jpeg-image-to-memorystream –

4

Согласно URL определение шаблона, вы должны использовать '/' Insted из '\' в пути к месту назначения ресурсов, так:

image.save(@"C:/img.jpg", ImageFormat.Jpeg); 
+0

Я по-прежнему получаю такую ​​же ошибку. – user2725580

1

У меня была та же проблема. Быстрый обходной путь был вручную создать каталог, и она работала как чемпион:

string directory_where_you_want_to_save_file = "./subdir"; 
System.IO.Directory.CreateDirectory(pathString); 
0

попробовать это: image.Save (Application.StartupPath + "\ IMG.jpg");

Смежные вопросы