コード例 #1
0
        public bool UnZip(UnZipOprationInfo unZipOprationInfo)
        {
            //if (unZipOprationInfo.DestinationPath[0] != '~')
            //    unZipOprationInfo.DestinationPath = unZipOprationInfo.DestinationPath[0] == '/' ? "~" +
            //        unZipOprationInfo.DestinationPath : "~/" + unZipOprationInfo.DestinationPath;
            //if (unZipOprationInfo.SourcePath[0] != '~')
            //    unZipOprationInfo.SourcePath = unZipOprationInfo.SourcePath[0] == '/' ? "~" +
            //        unZipOprationInfo.SourcePath : "~/" + unZipOprationInfo.SourcePath;

            unZipOprationInfo.DestinationPath = _fileSystemManager.RelativeToAbsolutePath(AuthorizeManager.AuthorizeActionOnPath(unZipOprationInfo.DestinationPath, ActionKey.WriteToDisk));

            unZipOprationInfo.SourcePath = _fileSystemManager.RelativeToAbsolutePath(AuthorizeManager.AuthorizeActionOnPath(unZipOprationInfo.SourcePath, ActionKey.ReadFromDisk));

            return(_zipManager.UnZip(unZipOprationInfo));
        }
コード例 #2
0
 public virtual bool UnZip(UnZipOprationInfo unZipOprationInfo)
 {
     using (var zip = ZipFile.Read(unZipOprationInfo.SourcePath))
     {
         if (unZipOprationInfo.Password != "")
         {
             zip.Password = unZipOprationInfo.Password;
         }
         if (unZipOprationInfo.OverWrite != "")
         {
             var overWrite = ExtractExistingFileAction.OverwriteSilently;
             Enum.TryParse(unZipOprationInfo.OverWrite, true, out overWrite);
             zip.ExtractAll(unZipOprationInfo.DestinationPath, overWrite);
         }
         else
         {
             zip.ExtractAll(unZipOprationInfo.DestinationPath);
         }
     }
     return(true);
 }
コード例 #3
0
 public bool UnZip(UnZipOprationInfo unZipOprationInfo)
 {
     return(_fileSystemBiz.UnZip(unZipOprationInfo));
 }