37 lines
833 B
C#
37 lines
833 B
C#
using System;
|
|
using System.IO;
|
|
using Ionic.Zip;
|
|
using UnityEngine;
|
|
|
|
namespace GISTech.GISDataDownloader
|
|
{
|
|
public class ZipUtil
|
|
{
|
|
public static void Zip(string zipFileName, params string[] files)
|
|
{
|
|
Directory.CreateDirectory(Path.GetDirectoryName(zipFileName));
|
|
using ZipFile zipFile = new ZipFile();
|
|
foreach (string fileName in files)
|
|
{
|
|
zipFile.AddFile(fileName, "");
|
|
}
|
|
zipFile.Save(zipFileName);
|
|
}
|
|
|
|
public static void Unzip(string zipFilePath, string location)
|
|
{
|
|
Directory.CreateDirectory(location);
|
|
try
|
|
{
|
|
using ZipFile zipFile = ZipFile.Read(zipFilePath);
|
|
zipFile.ExtractAll(location, ExtractExistingFileAction.OverwriteSilently);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
Debug.LogError("Error while extracting Data ... Try againe " + ex);
|
|
File.Delete(zipFilePath);
|
|
}
|
|
}
|
|
}
|
|
}
|