第三方Girdview中文件下载的方法,以及js显示图片

/// <summary>

/// 文件下载事件

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void Grid_OnCopyInsertClick(object sender, EventArgs e)         {

LinkButton LBut = sender as LinkButton;

string sellContractScanId = LBut.CommandName;

string url = "";

string name = "";

foreach (DataRow dr in griViewTable.Rows)             {

if (dr["序号"].ToString().Equals(sellContractScanId))                 {

url = dr["路径"].ToString();

name = dr["文件名称"].ToString();

break;

}             }

if (System.IO.File.Exists(HttpContext.Current.Server.MapPath(url)))             {

Response.Redirect("UserInfoScanDownload.aspx?FilePath=" + url + "&FileName=" + name);

}

else

{                 bp.Alert("文件不存在!");

}

BasePage bp = null;

protected void Page_Load(object sender, EventArgs e)         {

if (Request["FilePath"] == null)

return;

if (Request["FileName"] == null)

return;

string fileRpath = Request["FilePath"].ToString();

string fileName = Request["FileName"].ToString();

if (System.IO.File.Exists(HttpContext.Current.Server.MapPath(fileRpath)))             {

Response.ClearHeaders();

Response.Clear();

Response.Expires = 0;

Response.Buffer = true;

Response.AddHeader("Accept-Language", "zh-tw");

string name = System.IO.Path.GetFileName(fileRpath);

System.IO.FileStream files = new FileStream(HttpContext.Current.Server.MapPath(fileRpath), FileMode.Open, FileAccess.Read, FileShare.Read);                 byte[] byteFile = null;

if (files.Length == 0)                 {

byteFile = new byte[1];

}

else

{

byteFile = new byte[files.Length];

}

files.Read(byteFile, 0, (int)byteFile.Length);

files.Close();

Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));                 Response.ContentType = "application/octet-stream;charset=gbk";

Response.BinaryWrite(byteFile);

Response.End();

}

}

时间: 2024-10-24 02:58:37

第三方Girdview中文件下载的方法,以及js显示图片的相关文章

viewer.js 显示图片名称和照片属性

显示效果: 中间显示照片名称,右侧显示照片属性. 图片名称是保存与数据库里的,照片属性是相机或手机拍照时就存储于照片格式中的. 手机照片甚至保存了经纬度等详细信息(这也是QQ能实现旅游相册的原因). ADO.net MVC   部分视图 ViewPhotoWithAttr,也就是功能模块化. <link href="~/Scripts/viewer/viewer.min.css?v=20190612" rel="stylesheet" /> <sc

MVC发布后项目存在于根目录中的子目录中时的css与js、图片路径问题

加载固定资源js与css <script src="@Url.Content("~/Scripts/js/jquery.min.js")" type="text/javascript"></script><link href="@Url.Content("~/Content/css/shop.css")" rel="stylesheet" type=&quo

php学习笔记(JS中的常见方法)

JS中的常见方法: 1.日期时间函数(需要用变量调用): var b = new Date(); //获取当前时间 b.getTime() //获取时间戳 b.getFullYear() //获取年份 b.getMonth()+1; //获取月份 b.getDate() //获取天 b.getHours() //获取小时 b.getMinutes() //获取分钟 b.getSeconds() //获取秒数 b.getDay() //获取星期几 b.getMilliseconds() //获取毫

原生js获取css中class的方法

function getByClass( className, context) { var context = context || document; if( context.getElementsByClassName) { return context.getElementsByClassName(className); } var nodes = context.getElementsByTagName("*"); ret=[]; for( var i=0; i<nod

js中使用eval()方法将字符串转换成日期格式、并获取指定时间的日期

1.在js中eval()方法将字符串格式数据转换成日期格式 function getDate(strDate) {         //strDate为需要转换成日期格式的字符串         var date = eval('new Date(' + strDate.replace(/\d+(?=-[^-]+$)/,                 function (a) { return parseInt(a, 10) - 1; }).match(/\d+/g) + ')');    

jsp的C标签一般使用方法以及js接收servlet中的对象及对象数字

jsp的C标签一般使用方法以及js接收servlet中的对象及对象数组 由于现流行的javaWeb框架提倡前后端分离,比如在SpringMvc中已经很少写servlet的一些东西:目前 前端jsp中大多是一些纯html和js,很少用到jstl的一堆东西,后端也仅仅处理一些前端的post.get请求或页面跳转,无须以往繁琐的xml路径映射和filter过滤. 不过有时也会用到servlet作用域中的一些东西,比如某个固定的值.上下文路径等等~,不过这些东西大多数也仅限于取值而不是设置值(或对象),

JS中通过call方法实现继承

讲解都写在注释里面了,有不对的地方请拍砖,谢谢! <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>JS通过call方法实现继承</title> </head> <body> <script type="text/javascript"> /* js中的继承有多种实现方式,今天我们讨论下通过call方法实现的继承. 此

js中继承的方法总结(apply,call,prototype)

一,js中对象继承 js中有三种继承方式 1.js原型(prototype)实现继承 代码如下: <SPAN style="<SPAN style="FONT-SIZE: 18px"><html> <body> <script type="text/javascript"> function Person(name,age){ this.name=name; this.age=age; } Person

js中__proto__, property, prototype, 对象自身属性方法和原型中的属性方法的区别

__proto__: 这个属性是实例对象的属性,每个实例对象都有一个__proto__属性,这个属性指向实例化该实例的构造函数的原型对象(prototype). proterty:这个方法是对象的属性.(据说和一个对象的attr类似,比如dom对象中) prototype:每个构造函数都有一个prototype对象,这个对象指向该构造函数的原型. 对象自身属性方法和原型中的属性方法的区别: 对象自身的属性和方法只对该对象有效,而原型链中的属性方法对所有实例有效. 例子: function bas