vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

C# Ecke
XMl MemoryStream 
Autor: F.MUE.KS
Datum: 07.12.06 14:49

Halli Hallo

Ich verpacke meine Projektdaten in einer passwort geschützten zip datei.
Diese ZipDatei entpacke ich mit der SharpZibLip Bibliothek.

Klappt alles soweit ganz gut. Ich möchte die daten aber nicht erts speichern, sondern direkt in einen Memorystream schreiben und dann verwenden.

Leider habe ich probleme mit xml dateien.
Bekomme jedesmal die Fehlermeldung , wenn der Stream
geladen werden soll :

Das Stammelement ist nicht vorhanden.

Kann mir jemand helfen ??
Danke im Vorraus.

Hier wird der Fehler ausgelöst :
                                    if (fileName == "Projekt.xml")
                                    {
                                        // Es handelt sich um ein XML Document.
                                        this.ProjectXml  = new _
                                          System.Xml.XmlDocument();
 
                                        this.ProjectXml.Load(stream);
                                        break;
                                    }
Der ganze Code
 
    public bool LoadProjectDatas(string[] args) {
 
 
            // Diese Function entpackt eine übergebene Project Datei
            // Diese Projectdatei besteht aus :
            // 1 x xml datei Namens Project.xml;
            // 1 x bmp/jpg/png Namens Projectbild.xxx;
            // x ImageDateien unbekannten Dateiformats.
            //
            // Alle dateien werden in die übergebene Imagelist
            // geschrieben, bis auf die xml und das Projectbild
 
            // die übergebene Imagelist wird erst einmal abgelöscht
 
            TempImageList.Images.Clear();
 
            // Perform simple parameter checking.
            if (args.Length < 1)
            {
                System.Windows.Forms.MessageBox.Show("Es wurde keine" & _
                  "Projektdatei angegeben.");
                return false;
            }
 
            if (!File.Exists(args[0]))
            {
                System.Windows.Forms.MessageBox.Show("Kann Projekdatei nicht" & _
                  "finden : '" + args[0]);
                return false;
            }
 
            using (ZipInputStream s = new ZipInputStream(File.OpenRead( _
              args[0])))
            {
 
                s.Password = "sfgdfge3534j53nbj53j5b";
 
                ZipEntry theEntry;
 
                while ((theEntry = s.GetNextEntry()) != null)
                {
 
                    Console.WriteLine(theEntry.Name);
 
                    string directoryName = Path.GetDirectoryName(theEntry.Name);
                    string fileName = Path.GetFileName(theEntry.Name);
 
                    // create directory
                    if (directoryName.Length > 0)
                    {
                        Directory.CreateDirectory(directoryName);
                    }
 
                    if (fileName != String.Empty)
                    {
 
                        using (MemoryStream stream = new MemoryStream())
                        {
 
                            int size = 2048;
                            byte[] data = new byte[2048];
                            while (true)
                            {
                                size = s.Read(data, 0, data.Length);
                                if (size > 0)
                                {
                                    //streamWriter.Write(data, 0, size);
                                    stream.Write(data, 0, size);
 
                                }
                                else
                                {
                                    // wird nun ein Bild entpackt, wird dieses _
                                      in die übergebene ImageList geschrieben
 
                                    if (fileName == "Projekt.xml")
                                    {
                                        // Es handelt sich um ein XML Document.
                                        this.ProjectXml  = new _
                                          System.Xml.XmlDocument();
 
                                        this.ProjectXml.Load(stream);
                                        break;
                                    }
 
                                    if (fileName == "Projekt.png")
                                    {
                                        // Es handelt sich um ein XML Document.
                                        this.ProjectImage = _
                                          System.Drawing.Image.FromStream( _
                                          stream);
                                        break;
                                    }
 
                                    System.Drawing.Image Bild = _
                                      System.Drawing.Image.FromStream(stream);
                                    this.TempImageList.Images.Add(fileName, _
                                    Bild);
                                    break;
                                }
                            }
                        }
                    }
 
                }
 
                return true;
            }
 
 
 
        }
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
XMl MemoryStream8.982F.MUE.KS07.12.06 14:49
Re: XMl MemoryStream2.948ModeratorDaveS07.12.06 14:57
Re: XMl MemoryStream2.988ModeratorDaveS07.12.06 14:58
Re: XMl MemoryStream2.881F.MUE.KS07.12.06 15:19

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel