Erstellen Sie neue FileStream-aus einem byte-array

Ich bin versucht, erstellen Sie eine neue FileStream-Objekt aus einem byte-array. Ich bin mir sicher, dass machte alles keinen Sinn, so werde ich versuchen zu erklären, im detail weiter unten.

Aufgaben, die ich ausfüllen:
1) Auslesen der Quell-Datei, die war vorher komprimiert
2) Entpacken Sie die Daten mit GZipStream
3) kopieren Sie den dekomprimierten Daten in ein byte-array.

, Was ich ändern möchte:

1) ich möchte in der Lage sein, um die Nutzung Datei.ReadAllBytes zu Lesen, der dekomprimierten Daten.
2) ich möchte dann zum erstellen eines neuen filestream-Objekt usingg dieses byte-array.

Kurz gesagt, ich möchte das gesamte Betriebssystem mit byte-arrays. Einer der Parameter für GZipStream ist ein stream von einer Art, so dass ich dachte, ich steckte Sie ein filestream. Aber, wenn eine Methode vorhanden ist, wo kann ich erstellen eine neue Instanz der FileStream-aus einem byte-array, dann sollte ich in Ordnung sein.

Hier ist was ich habe, so weit:

FolderBrowserDialog fbd = new FolderBrowserDialog(); //Shows a browser dialog
 fbd.ShowDialog();

            //Path to directory of files to compress and decompress.
            string dirpath = fbd.SelectedPath;

            DirectoryInfo di = new DirectoryInfo(dirpath);


 foreach (FileInfo fi in di.GetFiles())
            {
                zip.Program.Decompress(fi);

            }

            //Get the stream of the source file.
            using (FileStream inFile = fi.OpenRead())
            {

                //Create the decompressed file.
                string outfile = @"C:\Decompressed.exe";
                {
                    using (GZipStream Decompress = new GZipStream(inFile,
                            CompressionMode.Decompress))
                    {
                        byte[] b = new byte[blen.Length];
                        Decompress.Read(b,0,b.Length);
                        File.WriteAllBytes(outfile, b);
                    }
                }
            }

Vielen Dank für jede Hilfe!!!
Grüße,
Evan

  • Es klingt wie MemoryStream könnten Sie nützlich sein.
  • Dieser code ist nicht compule (Klammer Diskrepanz in der foreach). Und während Sie bei der Bearbeitung, die browsedialog Zeug ist völlig irrelevant.
  • Für das was ich mache, aber die browsedialog ist nicht unerheblich.
InformationsquelleAutor | 2011-05-20
Schreibe einen Kommentar