对于生成多个excel或pdf、word成功后,打包问题,请教高手!!! 现在有这么一个功能:导出功能 当用户点击导出时,在服务器端先生成多个excel文件,生成成功后,在打包(.rar),打包成功后,用户直接下载. 对于打包现在不知道怎么做,希望做过的能给点意见。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 /// <summary> /// 压缩方法 /// </summary> /// <param name="patch">预压缩的路径</param> /// <param name="rarPatch">压缩后的路径</param> /// <param name="rarName">压缩文件名</param> public static void RARsave(string patch, string rarPatch, string rarName) { 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); Directory.CreateDirectory(patch); //命令参数 //the_Info = " a " + rarName + " " + @"C:Test?70821.txt"; //文件压缩 the_Info = " a " + rarName + " " + patch + " -r"; ; the_StartInfo = new ProcessStartInfo(); the_StartInfo.FileName = the_rar; the_StartInfo.Arguments = the_Info; the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden; //打包文件存放目录 the_StartInfo.WorkingDirectory = rarPatch; the_Process = new Process(); the_Process.StartInfo = the_StartInfo; the_Process.Start(); the_Process.WaitForExit(); the_Process.Close(); } catch (Exception ex) { throw ex; } } /// <summary> ///解 压缩方法 /// </summary> /// <param name="patch">预解压缩的路径</param> /// <param name="rarPatch">解压缩后的路径</param> public static int unRAR(string unRarPatch, string rarPatch) { try { System.Diagnostics.Process Process1 = new System.Diagnostics.Process(); Process1.StartInfo.FileName = "Winrar.exe"; Process1.StartInfo.CreateNoWindow = true; Process1.StartInfo.Arguments = " e " + unRarPatch + " " + rarPatch + " -y"; Process1.Start(); Process1.WaitForExit(); if (Process1.HasExited) { return Process1.ExitCode; } return -1000; } catch (Exception ex) { return -1001; } }参考 lucene.net 更新部分更新查询出来的doc内容 配置出错代码! 求一个撰写软件使用说明的软件,主要添加目录,及对应的页码方便的,用word太恼火了 模糊查询的修改,谢谢大家 角色管理,自己做还是用asp.net的?? 为什么用utraEdit编辑的.CS文件中的汉字在VS 2005 中全部显示为乱码 [BT种子]北大青鸟ASP.NET视频教程 请教高手!急!在线等! 关于DropDownList的问题,来着有分! asp.net web页控件(ascx)疑问!高手请进 关于flashpaper的代码问题,求教。。 他们到底是什么类型的。
/// 压缩方法
/// </summary>
/// <param name="patch">预压缩的路径</param>
/// <param name="rarPatch">压缩后的路径</param>
/// <param name="rarName">压缩文件名</param>
public static void RARsave(string patch, string rarPatch, string rarName)
{
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);
Directory.CreateDirectory(patch);
//命令参数 //the_Info = " a " + rarName + " " + @"C:Test?70821.txt"; //文件压缩 the_Info = " a " + rarName + " " + patch + " -r"; ;
the_StartInfo = new ProcessStartInfo();
the_StartInfo.FileName = the_rar;
the_StartInfo.Arguments = the_Info;
the_StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
//打包文件存放目录 the_StartInfo.WorkingDirectory = rarPatch;
the_Process = new Process();
the_Process.StartInfo = the_StartInfo;
the_Process.Start();
the_Process.WaitForExit();
the_Process.Close();
}
catch (Exception ex)
{
throw ex;
}
} /// <summary>
///解 压缩方法
/// </summary>
/// <param name="patch">预解压缩的路径</param>
/// <param name="rarPatch">解压缩后的路径</param> public static int unRAR(string unRarPatch, string rarPatch)
{ try
{
System.Diagnostics.Process Process1 = new System.Diagnostics.Process();
Process1.StartInfo.FileName = "Winrar.exe";
Process1.StartInfo.CreateNoWindow = true;
Process1.StartInfo.Arguments = " e " + unRarPatch + " " + rarPatch + " -y";
Process1.Start();
Process1.WaitForExit();
if (Process1.HasExited)
{
return Process1.ExitCode;
}
return -1000;
}
catch (Exception ex)
{
return -1001;
}
}
参考