手机
当前位置:查字典教程网 >编程开发 >asp.net教程 >asp.net 上传下载输出二进制流实现代码
asp.net 上传下载输出二进制流实现代码
摘要:复制代码代码如下:usingSystem;usingSystem.Collections;usingSystem.Configuration...

复制代码 代码如下:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Data.SqlClient;

using System.IO;

namespace Delegate

{

public partial class ReadStream : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

}

/// <summary>

/// 将上传的文件转换成二进制流保存在数据库

/// </summary>

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

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

protected void Button1_Click(object sender, EventArgs e)

{

SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["sql"].ToString());

string strSql="insert into test(timage)values(@images)";//保存二进制流的方式需参数的形式

SqlCommand cmd = new SqlCommand(strSql, conn);

conn.Open();

string filepath = Server.MapPath("~/");

filepath += FileUpload1.FileName;

FileUpload1.SaveAs(filepath);

FileStream fs = new FileStream(filepath, FileMode.Open, FileAccess.Read);//读取文件

BinaryReader br = new BinaryReader(fs);

byte[] photo = br.ReadBytes((int)fs.Length);

br.Close();

fs.Close();

cmd.Parameters.Add("@images", SqlDbType.Binary, photo.Length);//设置参数

cmd.Parameters["@images"].Value = photo;//设置值

if (cmd.ExecuteNonQuery() == 1)

{

Response.Write("添加成功!");

}

conn.Close();

}

protected void Button2_Click(object sender, EventArgs e)

{

SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["sql"].ToString());

conn.Open();

string strSql = "select top 1 timage from test";

SqlCommand cmd = new SqlCommand(strSql, conn);

SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);

if (dr.Read())

{

byte[] by = (byte[])dr[0];

Response.AddHeader("Content-Disposition", "attachment; filename=ceshi.txt");//设置读取的文件头

Response.AddHeader("Content-Length", by.Length.ToString());

Response.ContentType = "text/plain";//设置输出类型 这里可以保存在数据库中 动态实现类型

Response.OutputStream.Write(by, 0, by.Length); //输出

Response.Flush();

}

conn.Close();

}

}

}

【asp.net 上传下载输出二进制流实现代码】相关文章:

Asp.NET 多层登陆实现代码

asp.net 文章内容分页显示的代码

asp.net cookie清除的代码

asp.net 生成曲线图实现代码

asp.net下定制日期输出格式的代码

asp.net高效替换大容量字符实现代码

asp.net 事件与委托分析

asp.net下百度的编码和解码

asp.net(C#) 生成随机验证码的代码

asp.net 获取图片高度和宽度实例代码

精品推荐
分类导航