filestream按块读文件写入数据库,给个例子

解决方案 »

  1.   

    string name=name_TextBox.Text;
    //接收上传文件
     Stream fileStream=File1.PostedFile.InputStream;  
    //获取上传文件字节的大小
    int length=File1.PostedFile.ContentLength;  
    byte[] wordData=new byte[length];
    //从流中读取字节并写入wordData
    int n=fileStream.Read(wordData,0,length);
    //获取当前时间
    DateTime time=DateTime.Now;
    //连接数据库
    SqlConnection conn=new SqlConnection();
    conn.ConnectionString="";
    SqlCommand cmd=new SqlCommand();
    cmd.Connection=conn;
    cmd.CommandText="INSERT INTO word (fileName,postTime,fileContent) values (@fileName,@postTime,@fileContent)";
    SqlParameter nameParam=new SqlParameter("@fileName",System.Data.SqlDbType.VarChar,50);
    nameParam.Value=name;
    cmd.Parameters.Add(nameParam);
    SqlParameter timeParam=new SqlParameter("@postTime",System.Data.SqlDbType.DateTime,8);
    timeParam.Value=time;
    cmd.Parameters.Add(timeParam);
    //添加word文件
    SqlParameter contentParam=new SqlParameter("@fileContent",System.Data.SqlDbType.Image); 
    contentParam.Value=wordData;
    cmd.Parameters.Add(contentParam);
    conn.Open();
    cmd.ExecuteNonQuery();
    conn.Close();