public void TestZipFile2()
 {
     using (var zip = new ZipFile2(Path.Combine(TestDataPaths.TestDir, "ziptest.zip")))
     {
         CollectionAssert.AreEquivalent(new[]
         {
             "A",
             "C/A"
         }, zip.Files);
     }
 }
 public void TestKenkyuushaZipFile2()
 {
     using (var zip = new ZipFile2(TestDataPaths.Kenkyusha5))
     {
         var l = zip.Files.ToList();
         using (var file = zip.OpenFile(l.First(e => e == "index.json")))
             using (var reader = new StreamReader(file))
             {
                 _ = reader.ReadToEnd();
             }
     }
 }
        private static EpwingDictionaries CreateEpwing(string dataDirectory, string cacheDirectory)
        {
            var dictionaries = new EpwingDictionaries();

            try
            {
                var dataPath = Path.Combine(dataDirectory, "epwing");
                var zipFiles = new List <ZipFile2>();
                try
                {
                    foreach (var zipFullPath in Directory.EnumerateFiles(dataPath, "*.zip"))
                    {
                        var zipFile = new ZipFile2(zipFullPath);
                        zipFiles.Add(zipFile);
                        var zipFileName = Path.GetFileName(zipFullPath);
                        var dictionary  = new YomichanTermDictionary(zipFile, Path.Combine(cacheDirectory, "epwing", zipFileName + ".cache"));
                        dictionaries.Add(dictionary);
                    }
                }
                finally
                {
                    foreach (var zipFile in zipFiles)
                    {
                        zipFile.Dispose();
                    }
                }
            }
            catch (DirectoryNotFoundException)
            {
            }
            catch (InvalidOperationException)
            {
            }

            return(dictionaries);
        }