• C#解压和压缩文件


    两种方式,

    1. .net4.5之后自带的  

    ZipFile.CreateFromDirectory(待压缩文件夹,要保存的zip文件路径) 和 ZipFile.ExtractToDirectory(zip压缩文件,解压路径)

    2. 引入类库 SharpZipLib

    ========================

    1. 用自带的 解压文件(如果解压目录有重名文件会报异常)

    try
        {
            string zipPath = (Directory.GetCurrentDirectory() + "\" + "my_zip");
            Console.WriteLine("Zip's path: " + zipPath);
            //Declare a temporary path to unzip your files
            string tempPath = Path.Combine(Directory.GetCurrentDirectory(), "tempUnzip");
            string extractPath = Directory.GetCurrentDirectory();
            ZipFile.ExtractToDirectory(zipPath, tempPath);
    
            //build an array of the unzipped files
            string[] files = Directory.GetFiles(tempPath);
    
            foreach (string file in files)
            {
                FileInfo f = new FileInfo(file);
                //Check if the file exists already, if so delete it and then move the new file to the extract folder
                if (File.Exists(Path.Combine(extractPath,f.Name)))
                {
                    File.Delete(Path.Combine(extractPath, f.Name));
                    File.Move(f.FullName, Path.Combine(extractPath, f.Name));
                }
                else
                {
                    File.Move(f.FullName, Path.Combine(extractPath, f.Name));
                }
            }
            //Delete the temporary directory.
            Directory.Delete(tempPath);
            return (0); // 0 all fine 
        }
        catch (Exception)
        {
            return (1); // 1 = extract error
        }

    2.类库

    首先需要在项目里引用SharpZipLib.dll。然后修改其中的关于压缩和解压缩的类。(看下面例子)

    转: 

    https://jingyan.baidu.com/article/3f16e00313a8a72591c10313.html

    https://blog.csdn.net/e295166319/article/details/52824235

    https://www.cnblogs.com/greatverve/archive/2011/12/27/csharp-zip.html

  • 相关阅读:
    .Net魔法堂:log4net详解
    CentOS6.5菜鸟之旅:安装SUN JDK1.7和Tomcat7
    Java魔法堂:注释和注释模板
    Eclipse魔法堂:任务管理器
    CentOS6.5菜鸟之旅:VirtualBox4.3识别USB设备
    Windows魔法堂:解决“由于启动计算机时出现页面文件配置问题.......”
    JS魔法堂:IE5~9的Drag&Drop API
    CentOS6.5菜鸟之旅:安装VirtualBox4.3
    HTML5魔法堂:全面理解Drag & Drop API
    byzx
  • 原文地址:https://www.cnblogs.com/fps2tao/p/14965009.html
Copyright © 2020-2023  润新知