zoukankan      html  css  js  c++  java
  • 从数据库下载文档到指定目录下

    dataGridView1第0列是checkbox 选中则下载。       
    private void button5_Click(object sender, EventArgs e)
            {
                int j = dataGridView1.Rows.Count;
                Boolean find = false;
                for (int i = 0; i < j; ++i)
                {
                    if (Convert.ToBoolean(dataGridView1.Rows[i].Cells[0].Value) == true)
                    {
                        find = true;
                        SaveFileDialog sfd = new SaveFileDialog();
                        sfd.FileName = dataGridView1.Rows[i].Cells[4].Value.ToString();     //获取文件名
                        string str = dataGridView1.Rows[i].Cells[3].Value.ToString();         //获取文件后缀名
                        switch (str)
                        {
                            case ".doc":
                                sfd.Filter = "word文档(*.doc)|*.Doc";
                                break;
                            case ".xls":
                                sfd.Filter = "xls文档(*.xls)|*.xls";
                                break;
                            case ".txt":
                                sfd.Filter = "txt文档(*.txt)|*.txt";
                                break;
                            case ".jpg":
                                sfd.Filter = "图片文档(*.jpg)|*.jpg";
                                break;
                            case ".bmp":
                                sfd.Filter = "图片文档(*.bmp)|*.bmp";
                                break;
                            case ".gif":
                                sfd.Filter = "图片文档(*.gif)|*.gif";
                                break;
                            default:
                                sfd.Filter = "其他格式|*." + dataGridView1.Rows[i].Cells[10].Value.ToString();
                                break;
                        }
                        try
                        {
                            sqlDataAdapter1.SelectCommand.CommandText = "select ProjectContent from content where id='" + dataGridView1.Rows[i].Cells[1].Value.ToString() + "'";
                            DataSet dataset = new DataSet();
                            sqlDataAdapter1.Fill(dataset, "content");
                            byte[] mydata = null;
                            mydata = (byte[])dataset.Tables[0].Rows[0]["ProjectContent"];

                            Int32 size = mydata.GetUpperBound(0);

                            string filepath;
                            if (sfd.ShowDialog() == DialogResult.OK)
                            {

                                sfd.FilterIndex = 1;
                                filepath = sfd.FileName;
                                FileStream fs = new FileStream(filepath, FileMode.OpenOrCreate, FileAccess.Write);
                                fs.Write(mydata, 0, size + 1);
                                fs.Close();
                                MessageBox.Show("保存文件成功!", "提示");
                               
                            }

                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.ToString(), "错误提示");
                        }

                    }

                }
                if (find == false)
                {
                    MessageBox.Show("请选中要下载的文档!", "提示");

                }
            }

  • 相关阅读:
    jdk动态代理
    HTML+JavaScript实现在一个下拉框中多选,然后提交到另外一个下拉框中的效果
    Top中是如何取到Linux内核中的Hertz的?以及CPU使用率到底是怎么算出来的?
    C语言中的负数是如何表示的?
    Learning Python第二版笔记-Chapter 3 How to run your program
    Learning Python第二版笔记-Chapter 4 Numbers
    Learning Python第二版笔记-Chapter 1 & 2
    Firefox中的document.all的替代方案From EasyCluster support Firefox
    Linux下共享库中的全局变量,静态变量是否只有一份?
    C和C++编程中static关键字的含义-修饰函数和变量
  • 原文地址:https://www.cnblogs.com/hyd309/p/1182896.html
Copyright © 2011-2022 走看看