FileUpload上传图片到指定文件夹中,并把路径存到数据库中
解决方案 »
- 再来一次(存储过程)
- 什么是三层结构.迷惑.提供资料也可以
- 使用AspNetPager与GridView分页出现问题
- ASP.NET2.0 ReportViewer会话已过期。
- 用js做的下拉菜单,在放在框架页面只能在框架页面显示,下拉菜单被下边框架挡住了!有什么方法可以解决这问题?
- 不会吧!用水晶报表打印只能是用导出到pdf中去吗?郁闷呀!
- 拜求::DataGrid中分页中的编辑、删除功能的实现!!急急
- 请问如何获得WebGrid当前选择的一行?
- 简单的一段代码运行起来没错但为什么会提示"网页上有错误",帮忙看看
- 请问如何查询DataSet中的表??
- datalist的一个问题
- Datalist怎样和AspNetPager绑定使用
{ //float zldx = hPostedFile.ContentLength / 1024;
filename = hPostedFile.FileName; int k = filename.LastIndexOf(".");
int j = filename.LastIndexOf("\\");
string type = filename.Substring(k + 1);
//filename = filename.Substring(j + 1, k - j - 1);
filename = filename.Substring(j + 1);
DateTime datetime1 = System.DateTime.Now;
type = type.ToLower(); filepath = datetime1.ToString("yyyyMMddHHmmss") + conn.CreateRandomCode(4) + "." + type;
string sql3 = "insert into zjrd_dbhd_fj(hdID,title,path) values('" + GID + "','" + filename + "','" + filepath + "')";
cmd.CommandText = sql3;
cmd.ExecuteNonQuery(); hPostedFile.SaveAs(Server.MapPath("upfile\\" + filepath));
流读取文件,写二进制字节数组代码:
private void InsertDB(string file)
{
FileInfo finfo = new FileInfo(file); //绝对路径
if (finfo.Exists)
{
//以Northwind数据库为例子
SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=Northwind;User ID=sa;Password=sa");
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "Insert into Categories(CategoryName,Description,Picture) values('test',@Description,@Content)";
cmd.Parameters.Add("@Content", SqlDbType.Image, (int)finfo.Length, "Picture"); //此处参数Size为写入的字节数
cmd.Parameters.Add("@Description", SqlDbType.NText, (int)finfo.Length, "Description");
//读取文件内容,写入byte数组
byte[] content = new byte[finfo.Length];
FileStream stream = finfo.OpenRead();
stream.Read(content, 0, content.Length);
stream.Flush();
stream.Close();
cmd.Parameters["@Content"].Value = content; //为参数赋值
try
{
conn.Open();
cmd.ExecuteNonQuery(); }
finally
{
conn.Close();
}
}
}
private void InsertDB(string file)
{
FileInfo finfo = new FileInfo(file); //绝对路径
if (finfo.Exists)
{
//以Northwind数据库为例子
SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=Northwind;User ID=sa;Password=sa");
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "Insert into Categories(CategoryName,Picture) values('test',@Content)";
cmd.Parameters.Add("@Content", SqlDbType.Image, (int)finfo.Length, "Picture"); //此处参数Size为写入的字节数
//读取文件内容,写入byte数组
byte[] content = new byte[finfo.Length];
FileStream stream = finfo.OpenRead();
stream.Read(content, 0, content.Length);
stream.Flush();
stream.Close();
cmd.Parameters["@Content"].Value = content; //为参数赋值
try
{
conn.Open();
cmd.ExecuteNonQuery();
}
finally
{
conn.Close();
}
}
}