在网上下载了zip,gzip,tar的压缩算法,但都是对文件进行压缩,如果实现对文件夹进行压缩(假设文件夹下面还会有文件夹)

解决方案 »

  1.   

    http://www.microsoft.com/china/msdn/library/langtool/vcsharp/miszipcompression.mspx
      

  2.   

    //这是统计目录中(包括子目录)文件数目的算法,你参照着改一下就可以用了 
           private int statisticFiles(string directory)
            {
                int statistic=System.IO.Directory.GetFiles(directory).Length;
                string[] directories = System.IO.Directory.GetDirectories(directory);
                foreach (string dir in directories)
                {
                    if (isDirectory(dir))
                    {
                        statistic += statisticFiles(dir);
                    }
                    else
                    {
                        MessageBox.Show("Directory is Inexistence.");
                    }
                }
                return statistic;
            }
      

  3.   

    如果不用算法,用winrar可以么?!用rar的命令行执行方式
    process.Start("WinRAR.exe","a -ibck -m1 d:\test.rar d:\ToZipFiles\*");
      

  4.   

    重新下载一份 miszipcompression.zip 就可以了,谢谢各位的帮助