Laden...

Beim Speichern eines Bilds, kommt der Fehler, dass die Datei benutzt wird

Erstellt von mafis90 vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.281 Views
M
mafis90 Themenstarter:in
11 Beiträge seit 2008
vor 14 Jahren
Beim Speichern eines Bilds, kommt der Fehler, dass die Datei benutzt wird

Hi,
ich probiere jetzt schon seit Tagen rum. Ich lade ein Bild in mein Programm und will es während das Programm läuft löschen und gegen ein neues Ersetzen. Nun bekomme ich immer den Fehler, dass die Datei grade genutzt wird. Wie schaffe ich es die Verbindung zu trennen, damit ich das Bild löschen kann und durch ein neues ersetzen kann ?

Vielen Dank

mafis90

R
164 Beiträge seit 2008
vor 14 Jahren

Hallo,
du musst alle Streams zum Bild schließen, sonst kann es nicht ersetzt werden.

Wenn du den StreamReader benutzt:


StreamReader read = new StreamReader("bild.bmp");
 // Auslesen des Bildes
read.Close(); // <- Den Stream wieder schließen.
// Erst jetzt kann das Bild ersetzt werden.

Du hast wahrscheinlich die Image-Klasse benutzt. Man kann die Methode Image.Dispose() aufrufen, um den Stream zu schließen.

C
114 Beiträge seit 2008
vor 14 Jahren

Also Image.Dispose() ist nicht dazu da, den Stream zu schließen, sondern um das eingeladene Bild aus dem Speicher freizugeben. Aber sonst musst du den Stream, mit dem du Bild eingelesen hast closen(wie vorher schon geschrieben) und danach dein neues Bild mit dem gleichen Namen und einem neuen Stream speichern.

„Heute back ich, morgen brau ich,
übermorgen cast ich die Königin nach int;
ach, wie gut dass niemand weiß,
dass ich Rumpelstilzchen heiß!“

"Bei Stylefragen sollteste nen Mac-User oder ne Frau fragen."

49.485 Beiträge seit 2005
vor 14 Jahren

Hallo mafis90,

das Thema wurde schon oft besprochen. Bitte benutze die Forumssuche und poste die besten Treffer hier. Vielen Dank!

herbivore

M
mafis90 Themenstarter:in
11 Beiträge seit 2008
vor 14 Jahren

Ok, danke mit den Streamreader funktioniert es super.

479 Beiträge seit 2008
vor 14 Jahren

Hallo mafis90,

du solltest (laut dem Buch 'C# von Kopf bis Fuß') zum lesen/schreiben von Dateien using verwenden. Dann wird der Stream bei } geschlossen.

mfg.
markus111

[Follow me on Twitter](http://twitter.com/blendingsky)