ShaHam11 Ответов: 0

Распаковка zip-файлов в C# с помощью sharapzip lib


Привет Команда

Я использовал sharziplib.dll для распаковки папок, мебель, 1400, который содержит текстовые файлы.
Однако после обработки около 236 папок я приземляюсь с ошибкой под названием "Конец потока".
мой код:
static void unzip()
        {
            try
            {
               
                var files = new List<string>(Directory.GetFiles(path, "*.zip*", SearchOption.AllDirectories));
                foreach (var item in files)
                {
 
                    var zipFileName = item;
                    var targetDir = Path.Combine(path,"unpack");
                    FastZip fastZip = new FastZip();
                    string fileFilter = null;
                    fastZip.ExtractZip(item, targetDir, fileFilter);
                    
                }

                Dictionary<string, int> Messagetype = new Dictionary<string, int>();
                var txtfiles = new List<string>(Directory.GetFiles(Path.Combine(path,"unpack"), "*.*", SearchOption.AllDirectories));
                foreach (var eachtxtfiles in txtfiles)
                {
                    //Reading the Text from the file
                    using (var reader = new StreamReader(eachtxtfiles))
                    {
                        string line;
                        int counter = 0;
                        line = reader.ReadLine();
                        while (line != null)
                        {
                            if (!string.IsNullOrEmpty(line))
                            {
                                //split the line
                                string[] parts = line.Split(new[] { "|" }, StringSplitOptions.None);

                                //get valid text
                                if (!Messagetype.ContainsKey(parts[1]))
                                    Messagetype[parts[1]] = 0;
                                Messagetype[parts[1]]++;
                            }
                            line = reader.ReadLine();


                        }

                    }
                    // Console.WriteLine(Messagetype.Count);



                }

                foreach (var ms in Messagetype.Keys)
                {
                    Console.WriteLine(ms + "-" + Messagetype[ms]);
                }
    


            }



            catch (Exception ex)
            {

                Console.WriteLine(ex.Message);
            }
            Console.ReadKey();

        }


Что я уже пробовал:

Я убедился, что папки не повреждены ..
Содержит только zip-папки..
Те же функции в моей локальной системе, у меня просто есть 5 папок на молнии. Однако на сервере у нас есть около 1400 + заархивированных папок, что составляет около 850 ГБ данных. На сервере я запускаю его как консольное приложение

Bernhard Hiller

где происходит это исключение? В "fastZip. ExtractZip(item, targetDir, fileFilter);" или где-то еще? Код после этой строки не связан с zip.

ShaHam11

Да, это происходит в том дворце. Однако я не могу отладить я скопировал console.exe файл на сервер (вся папка отладки). Ваше право код после этого не связан с распаковкой я на самом деле читаю содержимое из распакованных файлов...

0 Ответов