我想把 E:\\AA\BB\11.txt 压缩后存入 E:\\AA1\BB1\11.rar
但是当我解压( E:\\AA1\BB1\11.rar)的时候,发现:11.txt 不是在
E:\\AA1\BB1\11.txt 路径下,
而是
E:\\AA1\BB1\AA\BB\11.txt
悲剧就这样进行着,
下面是我的解决方案:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | /// <summary>    /// 压缩文件    /// </summary>    /// <param name="DFilePath">需要压缩的文件夹或者单个文件</param>    /// <param name="DRARName">生成压缩文件的文件名</param>    /// <param name="DRARPath">生成压缩文件保存路径</param>    /// <returns></returns>    protectedboolRAR(stringDFilePath, stringDRARName, stringDRARPath)    {        String the_rar;        RegistryKey the_Reg;        Object the_Obj;        String the_Info;        ProcessStartInfo the_StartInfo;        Process the_Process;        try        {            the_Reg = Registry.ClassesRoot.OpenSubKey(@"Applications\WinRAR.exe\Shell\Open\Command");            the_Obj = the_Reg.GetValue("");            the_rar = the_Obj.ToString();            the_Reg.Close();            the_rar = the_rar.Substring(1, the_rar.Length - 7);            the_Info = " a -r "+ DRARName + " "+ DFilePath;            <span style="color: rgb(255, 0, 0);">the_Info = " a -ep "+ DRARName + " "+ DFilePath;//这句话的 ‘-ep’很重要,有它就能不显示压缩前的路径</span>              the_StartInfo = newProcessStartInfo();            the_StartInfo.FileName = the_rar;            the_StartInfo.Arguments = the_Info;            the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;            the_StartInfo.WorkingDirectory = DRARPath; //RaR文件的存放目录。              the_Process = newProcess();            the_Process.StartInfo = the_StartInfo;            the_Process.Start();            returntrue;        }        catch(Exception ex)        {            returnfalse;        }    } | 
原文:http://www.cnblogs.com/bingzisky/p/3565073.html