public static void FetchAllFromFile(string blubbzipFilePath, string blubbzipPassword, EFastBlubbZipLoadType loadType, out Dictionary<int, Stream> StreamList, out Dictionary<int, string> FileList, out Dictionary<int, BlubbZipEntry> EntryList) { FileList = new Dictionary<int, string>(); StreamList = new Dictionary<int, Stream>(); EntryList = new Dictionary<int, BlubbZipEntry>(); if (File.Exists(blubbzipFilePath) == false) throw new Exception("File not Found!\n" + blubbzipFilePath); using (FileStream fs = File.OpenRead(blubbzipFilePath)) { BlubbZipFile blubb = new BlubbZipFile(fs); blubb.Password = blubbzipPassword; for (int cz = 0; cz < blubb.Count; cz++) { if (blubb[cz].IsFile == false) continue; if ((loadType & EFastBlubbZipLoadType.Streams) > 0) StreamList.Add(cz, blubb.GetInputStream(cz)); if ((loadType & EFastBlubbZipLoadType.FileList) > 0) FileList.Add(cz, blubb[cz].Name.ToString().Replace("/", @"\")); if ((loadType & EFastBlubbZipLoadType.Entrys) > 0) EntryList.Add(cz, blubb[cz].Clone() as BlubbZipEntry); } blubb.Close(); } }
public static void FetchAllFromFile(string fileName, string password, EBlubbZipHelperLoadType loadType, out Dictionary<int, Stream> streamList, out Dictionary<int, string> fileList, out Dictionary<int, BlubbZipEntry> entryList) { fileList = new Dictionary<int, string>(); streamList = new Dictionary<int, Stream>(); entryList = new Dictionary<int, BlubbZipEntry>(); if (File.Exists(fileName) == false) throw new Exception("File not Found!\n" + fileName); using (FileStream fs = File.OpenRead(fileName)) { BlubbZipFile blubb = new BlubbZipFile(fs); blubb.Password = password; for (int cz = 0; cz < blubb.Count; cz++) { if (blubb[cz].IsFile == false) continue; if ((loadType & EBlubbZipHelperLoadType.Streams) > 0) streamList.Add(cz, blubb.GetInputStream(cz)); if ((loadType & EBlubbZipHelperLoadType.FileList) > 0) fileList.Add(cz, blubb[cz].Name.ToString(CultureInfo.InvariantCulture).Replace("/", @"\")); if ((loadType & EBlubbZipHelperLoadType.Entrys) > 0) entryList.Add(cz, blubb[cz].Clone() as BlubbZipEntry); } blubb.Close(); } }
public static MemoryStream FetchFromFile(string blubbzipFilePath, string blubbzipPassword, int entryIndex) { using (FileStream fs = File.OpenRead(blubbzipFilePath)) { BlubbZipFile blubb = new BlubbZipFile(fs); blubb.Password = blubbzipPassword; Stream s = blubb.GetInputStream(entryIndex); MemoryStream Writer = new MemoryStream(); byte[] data = new byte[4096]; int size = s.Read(data, 0, data.Length); while (size > 0) { Writer.Write(data, 0, size); size = s.Read(data, 0, data.Length); } blubb.Close(); return Writer; } }
public static Stream GetFileStream(string fromZip, string password, int index) { using (FileStream fs = File.OpenRead(fromZip)) { BlubbZipFile blubb = new BlubbZipFile(fs); blubb.Password = password; Stream s = blubb.GetInputStream(index); Stream writer = new MemoryStream(); byte[] data = new byte[4096]; int size = s.Read(data, 0, data.Length); while (size > 0) { writer.Write(data, 0, size); size = s.Read(data, 0, data.Length); } blubb.Close(); return writer; } }
public static MemoryStream[] FetchListFromFile(string fromZip, string Password, int[] list) { using (FileStream fs = File.OpenRead(fromZip)) { BlubbZipFile blubb = new BlubbZipFile(fs); blubb.Password = Password; MemoryStream[] Streams = new MemoryStream[list.Length]; int counter = 0; foreach (int index in list) { Stream s = blubb.GetInputStream(index); MemoryStream Writer = new MemoryStream(); byte[] data = new byte[4096]; int size = s.Read(data, 0, data.Length); while (size > 0) { Writer.Write(data, 0, size); size = s.Read(data, 0, data.Length); } Streams[counter++] = Writer; } blubb.Close(); return Streams; } }