zoukankan      html  css  js  c++  java
  • C# 文件在数据库 的 存取

    、、、

            /// <summary>
            /// 获取数据库Image字段数据,保存到本地
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void button2_Click(object sender, EventArgs e)
            {
                string constr = "Data Source=IP地址服务器地址;Initial Catalog=SunS;User ID=sa;Password=1321654";
                SqlConnection con = new SqlConnection(constr);
                SqlCommand cmd = new SqlCommand();
                cmd.CommandText = "Select * from FileServer With (NoLock) Where FileName = '" + textBox1.Text + "'";
                cmd.CommandType = CommandType.Text;
                cmd.Connection = con;
                con.Open();
                DataTable dt = new DataTable();
                SqlDataAdapter ad = new SqlDataAdapter(cmd);// cmd.EndExecuteReader();
                ad.Fill(dt);
                con.Close();
                cmd.Dispose();
    
                byte[] pics1 = (byte[])dt.Rows[0]["CONTENT"];// 的值强制转换;
                writefile(pics1, "D://" + textBox1.Text + "");
            }
    
            public void writefile(byte[] pics, string filename)
            {
                FileStream fs = new FileStream(filename, FileMode.Append, FileAccess.Write);
                BinaryWriter bw = new BinaryWriter(fs);
                bw.Write(pics, 0, pics.Length);
                bw.Close();
                fs.Close();
            }
            /// <summary>
            /// 将文件转换成byte数组,写入数据库
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void button1_Click(object sender, EventArgs e)
            {
                FileInfo finfo = new FileInfo("D://" + textBox1.Text); //绝对路径
                if (finfo.Exists)
                {
                    SqlConnection conn = new SqlConnection( "Data Source=IP地址服务器地址;Initial Catalog=Sun;User ID=sa;Password=1312313");
                    SqlCommand InsertCommand = new SqlCommand();
                    InsertCommand.Connection = conn;
                    InsertCommand.CommandText = " UPDATE  FileServer SET CONTENT =@Content  WHERE [FILENAME] = '" + textBox1.Text + "'";
                    InsertCommand.Parameters.Add("@Content", SqlDbType.Image, (int)finfo.Length, "CONTENT"); //注意,此处参数Size为写入的字节数
                    //读取文件内容,写入byte数组
                    byte[] content = new byte[finfo.Length];
                    FileStream stream = finfo.OpenRead();
                    stream.Read(content, 0, content.Length);
                    stream.Close();
                    InsertCommand.Parameters["@Content"].Value = content; //为参数赋值
                    try
                    {
                        conn.Open();
                        InsertCommand.ExecuteNonQuery();
                    }
                    finally
                    {
                        conn.Close();
                    }
                }
            }

    ---

  • 相关阅读:
    JAVA Hibernate工作原理及为什么要用
    Struts2应用流程注解
    查看cpu几核方法
    loadrunner录制获取不到token
    cpu监控
    接口测试
    LoadRunner性能测试结果计数器指标说明
    windows资源监控
    loadrunner检查点
    loadrunner 关联
  • 原文地址:https://www.cnblogs.com/lanyubaicl/p/11162948.html
Copyright © 2011-2022 走看看