Problem mit Streams

23/08/2009 - 19:55 von Maximilian Tescher | Report spam
Hallo zusammen,

ich habe vor kurzem ein super Tipp bekommen um mittels der ZipLib von
ICSharp eine Datei aus einem Archiv einzulesen. Das lesen klappt
soweit, aber das schreiben scheint schwierig zu sein, oder ich
verstehe es einfach nicht.

Als Beispiel:
Wenn ich ein File mit XDocument.load öffne, dort Inhalte veràndere,
kann ich das Dokument wieder mit XDocument.save (also alles einfach
geschrieben), wird der Inhalt wieder in das File zurück geschrieben.

Da das öffnen ein Stream darstellt, dachte ich das gleiche klappt auch
mit einer Datei in einem ZIP-File, tut es aber nicht.

Meine nàchste Überlegung ist nun das einlesen der Datei aus einem ZIP-
File mittels Memorystream, dies stellt auch ein Stream dar und sollte
doch dann auch wieder zurück geschrieben werden können.

Leider bin ich soweit noch nicht gekommen da ich ein Problem mit dem
MemoryStream habe.

Ich seh den Wald vor lauter Bàumen nicht, zumal ich das schon mal
geschafft habe aber nicht mehr weiss wie.

Das ZIP-File kann ich öffnen und über GetInputStream bekomme ich ein
io.stream, diesen möchte ich dann in den MemoryStream einlesen und
spàter dann per AsciiEncoding.getstring... an XDocument lesen.

Dabei stelle ich mir vor das ich dann einfach den Stream zurück
schreiben kann.

Jetzt bràuchte ich für den Anfang erst mal eine Möglichkeit den Stream
in ein MemoryStream einzulesen.

Da ich mittlerweile mehrfach am Code rumgedreht habe, muss ich
nochmals von vorne anfangen.

Wàre Euch dankbar für ein paar Zeilen zum ersten lesen aus einem ZIP-
File (mittels ZipLib).


Viele Grüsse (und vielen Dank im voraus),
Maximilian
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
24/08/2009 - 09:45 | Warnen spam
Hallo Maximilian,

"Maximilian Tescher" schrieb:

ich habe vor kurzem ein super Tipp bekommen um mittels der ZipLib von
ICSharp eine Datei aus einem Archiv einzulesen.



vorab: Ich persönlich finde DotNetZip angenehmer.

http://www.codeplex.com/DotNetZip

Da das öffnen ein Stream darstellt, dachte ich das gleiche klappt auch
mit einer Datei in einem ZIP-File, tut es aber nicht.



Was genau meinst Du? Willst Du eine Datei in einem Zip-Archiv àndern?

Das ZIP-File kann ich öffnen und über GetInputStream bekomme ich ein
io.stream, diesen möchte ich dann in den MemoryStream einlesen und
spàter dann per AsciiEncoding.getstring... an XDocument lesen.



Öhm, Du willst eine Datei im Zip-Archiv lesen, oder? Falls nicht, bitte
mal detaillierter beschreiben, was genau Du machen willst.

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen