{
Response.Write("对不起!文件不存在!!")
return
}
这里的FileUpload1,是不是应该写成File.Exists....,FileUpload1看上去像是控件名称,而对服务器上的文件检查应用的File类。请核实。而FileUpload控件只是用来上传文件的,并不可能对已经存在于服务器上的文件进行访问。
下载代码,可以参考如下:
/// <summary>
/// 下载文件
/// </summary>
/// <param name="path">文件路径</param>
public void downLoad(string path)
{
try
{
string filePath = path
int temp = filePath.LastIndexOf("/") + 1
string fileName = filePath.Substring(temp, filePath.Length - temp)
//FileStream fileStream = new FileStream(Server.MapPath(filePath), FileMode.Open, FileAccess.Read, FileShare.Read)
FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read)
long fileSize = fileStream.Length
Context.Response.ContentType = "application/octet-stream"
Context.Response.AddHeader("Content-Disposition", "attachmentfilename=\"" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8) + "\"")
Context.Response.AddHeader("Content-Length", fileSize.ToString())
byte[] fileBuffer = new byte[fileSize]
fileStream.Read(fileBuffer, 0, (int)fileSize)
fileStream.Close()
Context.Response.BinaryWrite(fileBuffer)
Context.Response.End()
}
catch
{
Response.Write("<script>alert('查无此资料或已被删除')</script>")
}
}
你可以参考对比下
具体的解决方法如下:
修改tomcat配置文件server.xml,找到类似于下面配置:
<Connector port="8086" maxHttpHeaderSize="8192"。
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"。
enableLookups="false" redirectPort="8443" acceptCount="100"。
connectionTimeout="20000" disableUploadTimeout="true" />。
将上面的参数disableUploadTimeout值改为false即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)