My Great World

Nothing impossible

博客园 首页 新随笔 联系 订阅 管理
  3 Posts :: 1 Stories :: 0 Comments :: 0 Trackbacks

公告

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Data.SqlClient;


namespace WebApplication2
{
 /// <summary>
 /// WebForm1 的摘要说明。
 /// </summary>
 public class WebForm1 : System.Web.UI.Page
 {

  protected System.Web.UI.HtmlControls.HtmlInputFile SelectFile;
  protected System.Web.UI.HtmlControls.HtmlInputButton Submit1;
  protected System.Web.UI.WebControls.Label Label1;
  protected System.Web.UI.WebControls.Button Button1;
  private string de = ",:";
  private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   
  }

  #region Web 窗体设计器生成的代码
  override protected void OnInit(EventArgs e)
  {
   //
   // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
   //
       InitializeComponent();
       base.OnInit(e);
  }
  
  /// <summary>
  /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  /// 此方法的内容。
  /// </summary>
  private void InitializeComponent()
  {    
       this.Submit1.ServerClick += new System.EventHandler(this.Submit1_ServerClick);
       this.Button1.Click += new System.EventHandler(this.Button1_Click);
       this.Load += new System.EventHandler(this.Page_Load);

  }
  #endregion

  private void Submit1_ServerClick(object sender, System.EventArgs e)
  {
   //<input type=file id=SelectFile runat=server>
       if(SelectFile.PostedFile==null)
       {
            return;
       }
       else
       {
            HttpPostedFile myFile = SelectFile.PostedFile;
            string strFileName = Path.GetFileName(myFile.FileName);
    
            System.IO.Directory.CreateDirectory("D:\\Temp\\Test");//Create new directory

            //myFile.SaveAs("D:\\temp\\"+strFileName); //Save the upload file in the folder


    //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    //Save the file as binary file in the database
    //将上传的文件转化为二进制格式的字节流并存放到数据库中
            string datasourse = System.Configuration.ConfigurationSettings.AppSettings["datasourse"];
    
            FileInfo fi = new FileInfo(myFile.FileName);
            FileStream fs = fi.OpenRead();

            Byte[] bytes = new byte[fs.Length];
            fs.Read(bytes,0,Convert.ToInt32(fs.Length));
            SqlConnection con = new SqlConnection(datasourse);

            string sqlstr = "INSERT INTO Table1(FileInfo,FileName) VALUES (@FileInfo,@FileName)";
    
            SqlCommand command = new SqlCommand(sqlstr,con);
            command.Parameters.Add("@FileInfo",SqlDbType.Image,Convert.ToInt32(fs.Length));
            command.Parameters["@FileInfo"].Value =bytes;

            command.Parameters.Add("@FileName",SqlDbType.VarChar,50);
            command.Parameters["@FileName"].Value = strFileName;

    
            command.Connection.Open();
            command.ExecuteNonQuery();
            command.Connection.Close();
       }
  }
  
  //**************************************************************************
  //将存放在数据库中的文件下载下来并保存
  private void Button1_Click(object sender, System.EventArgs e)
 {
       string datasourse = System.Configuration.ConfigurationSettings.AppSettings["datasourse"];
       SqlConnection con = new SqlConnection(datasourse);
       string sqlstr = "select FileInfo from table1 where id=@ID";
       SqlCommand command = new SqlCommand(sqlstr,con);

       command.Parameters.Add("@ID",SqlDbType.Int,4);
       command.Parameters["@ID"].Value =5;
       command.Connection.Open();
       System.Data.SqlClient.SqlDataReader dr;
       dr = command.ExecuteReader();
       byte [] File = null;

       if(dr.Read())
       {

            File = (byte[])dr[0];
       }
       FileStream fs=new FileStream("D:\\Temp\\Test\\test1.txt",FileMode.CreateNew);
       BinaryWriter bw=new BinaryWriter(fs);
       bw.Write(File,0,File.Length);
       bw.Close();
       fs.Close();
       command.Connection.Close();
      }
     }
}

posted on 2005-12-15 13:47 My Great World 阅读(83) 评论(0)  编辑 收藏