我一个数据列表里面有多选框,选择N个多选框后,点击导出excel后,保存时是个打包文件,程序里面做了以下几个步骤:
一、生成excel表,到服务器的某个目录下,如:excelfile目录下
二、对excelfile目录下的所有excel文件进行打包操作
问题是,为什么我在本地下能够执行所有操作,excel表能够打包并保存;
但是一那到服务器上远程操作的时候就出现问题了?
提示错误是,excel正在使用,无法打包,但是进程里又没有excel。exe这个程序运行请问下这是什么问题?
一、生成excel表,到服务器的某个目录下,如:excelfile目录下
二、对excelfile目录下的所有excel文件进行打包操作
问题是,为什么我在本地下能够执行所有操作,excel表能够打包并保存;
但是一那到服务器上远程操作的时候就出现问题了?
提示错误是,excel正在使用,无法打包,但是进程里又没有excel。exe这个程序运行请问下这是什么问题?
解决方案 »
- 求asp.net网站灵活后台管理源码
- 当右键刷新时,为什么ViewState的值会丢失?
- WebServices里的Session和aspx里的Session能否通用?
- 求解一道简单的返回值问题
- .net中变量能与javascript进行传递吗
- 怎么计算文章日点击数,周点击数,月点击数
- 请教使用MailMessage类发送邮件的问题,发送5次成功之后再发送就失败,过会再发又可以?
- 哪一家的ASP.net主机好一些?
- ——————关于frameset的请教,谢谢
- 急!!!一个关于从dataset向数据库添加数据的问题
- csdn显示的帖子时间都是很准的吗,比如08:11:12秒,这和实际时间有多少差啊,它就是.net的time函数算出的吗
- 后台管理的frame刷新问题
原来你的机子即使服务端又是客户端!!
/// 用于生成压缩文件
/// </summary>
/// <param name="files">待生成文件的所在路径集合</param>
/// <param name="filename">生成的压缩文件名</param>
/// <param name="filepath">生成压缩文件存放路径</param>
public void CompressionFiles(string[] files,string filepath,string filename)
{
///压缩后生成的目标文件
string destPath = System.IO.Path.GetDirectoryName(filepath);
ZipOutputStream stream = new ZipOutputStream(File.Create(destPath + "\\Resume" + filename + ".zip"));
stream.SetLevel(6);
///在该目标文件中逐个添加待生成的文件
Crc32 cr32 = new Crc32();
foreach(string file in files)
{
int indexSplit = file.LastIndexOf("\\");
string subfilename = file.Substring(indexSplit + 1);
if(file!=""&&File.Exists(file))
{
FileStream filestream = File.OpenRead(file);
byte[] buffer = new byte[filestream.Length];
filestream.Read(buffer, 0, (int)filestream.Length);
ZipEntry entry = new ZipEntry(file);
entry.DateTime = System.DateTime.Now;
entry.Size = filestream.Length; cr32.Reset();
cr32.Update(buffer); entry.Crc = cr32.Value; stream.PutNextEntry(entry);
stream.Write(buffer, 0, (int)filestream.Length);
}
}
///执行文件压缩
stream.Finish();
stream.Close();
}
在打包前,生成excel表后
加个延时操作