两种方案:
1.在上传的程序中统一将文件压缩成压缩文件.rar的形式,再通过超链接,让用户下载。
2.html中有一个js方法document.execCommand可以保存当前页面的所有内容
所以你可以让用户点击超链接的时候,程序新建一个.html文件,将要下载的内容导入到这个文件中,用document.execCommand方法保存当前页面的内容,之后关闭掉这个.html,盯戚之后是否保留这个.html文件 你用程序处理下就可以了(思路)。
第一种方案就不说了
现在贴出第二种方案的实现:
//创建一个以当前时间命名的.html文件
string timenow = DateTime.Now.ToString("MM-dd-mm-ss")
string filename = timenow
string filestr = Server.MapPath(@"../downloadFile/" + CurrentUser.ID + "/" + filename + "/") + filename
DirectoryInfo di=new DirectoryInfo(filestr)
if(!di.Exists)
{
di.Create()
}
FileStream fileStream = new FileStream(filestr + ".html", FileMode.Create)
StringBuilder sb=new StringBuilder()
//用sb.Append()写入要呈现在.html文件的内容,这里省略了
//将呈现的页面内容导出给用户下载(这里默认的是导出到一个txt里,当然你可以根据下载
//的文件格式自定义导出的内容)
StreamWriter sw = new StreamWriter(fileStream, Encoding.UTF8)
sb.Append("<script>document.execCommand('saveas', 'true', 'InvoiceOut.txt')alert('导出成功!')self.close()</script>")
sw.Write(sb.ToString())
sw.Close()
Uri ur = Request.Url
string url = "http://" + ur.Authority + "/ERPB/downloadFile/"+CurrentUser.ID+"/"+timenow+"/"+ timenow + ".html"
Page.RegisterStartupScript("", "<script>downloadTxt('" + url + "')</script>吵则拍")
}
1.将下悉橡载的数据库脚本导入到本地数据库环境中。2.修改项目中的web.config文件,将数耐乱据库连接串改成本地的配置。
3.使昌陆档用vs打开sin文件,点F5直接运行网站即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)