C# 使用存储在数据库表中的图像将Gridview数据导出到excel

C# 使用存储在数据库表中的图像将Gridview数据导出到excel,c#,winforms,C#,Winforms,我想将gridview导出到excel文件,但问题是gridview中的图像存储在数据库表中..顺便说一下,我存储的是整个图像,而不是图像的路径,我也想导出图像..下面是代码 但是当我运行这个时,它会给出异常。。请帮忙。。 多谢各位 saveFileDialog1.Filter = "Excel (*.xls)|*.xls"; if (saveFileDialog1.ShowDialog() == DialogResult.OK) { i

我想将gridview导出到excel文件,但问题是gridview中的图像存储在数据库表中..顺便说一下,我存储的是整个图像,而不是图像的路径,我也想导出图像..下面是代码 但是当我运行这个时,它会给出异常。。请帮忙。。 多谢各位

 saveFileDialog1.Filter = "Excel (*.xls)|*.xls";
        if (saveFileDialog1.ShowDialog() == DialogResult.OK)
        {
            if (!saveFileDialog1.FileName.Equals(String.Empty))
            {
                FileInfo f = new FileInfo(saveFileDialog1.FileName);
                if (f.Extension.Equals(".xls"))
                {
                    Excel.Application xlApp;
                    Excel.Workbook xlWorkBook;
                    Excel.Worksheet xlWorkSheet;
                    object misValue = System.Reflection.Missing.Value;

                    xlApp = new Excel.ApplicationClass();
                    xlWorkBook = xlApp.Workbooks.Add(misValue);
                    xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
                    int i = 0;
                    int j = 0;

                    for (int h = 1; h < grid.Columns.Count + 1; h++)
                    {
                        xlWorkSheet.Cells[1, h] = grid.Columns[h - 1].HeaderText;
                    }
                        for (i = 0; i <= grid.RowCount - 1; i++)
                        {
                            for (j = 0; j <= grid.ColumnCount - 1; j++)
                            {

                                DataGridViewCell cell = grid[j, i];
                                xlWorkSheet.Cells.Borders.LineStyle = Excel.XlLineStyle.xlContinuous;
                                xlWorkSheet.Columns.AutoFit();
                                xlWorkSheet.Cells[i + 2, j + 1] = cell.FormatedValue;


                            }
                        }

                    xlWorkBook.SaveAs(saveFileDialog1.FileName, Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
                    xlWorkBook.Close(true, misValue, misValue);
                    xlApp.Quit();

                    releaseObject(xlWorkSheet);
                    releaseObject(xlWorkBook);
                    releaseObject(xlApp);

                    MessageBox.Show("Excel file created , you can find the file " + saveFileDialog1.FileName);
                }
                else
                {
                    MessageBox.Show("Invalid file type");
                }
            }
            else
            {
                MessageBox.Show("You did pick a location " +
                                "to save file to");
            }
        }
saveFileDialog1.Filter=“Excel(*.xls)|*.xls”;
if(saveFileDialog1.ShowDialog()==DialogResult.OK)
{
如果(!saveFileDialog1.FileName.Equals(String.Empty))
{
FileInfo f=newfileinfo(saveFileDialog1.FileName);
如果(f.扩展等于(“.xls”))
{
Excel.applicationxlapp;
Excel.工作簿;
Excel工作表;
对象错误值=System.Reflection.Missing.Value;
xlApp=new Excel.ApplicationClass();
xlWorkBook=xlApp.Workbooks.Add(错误值);
xlWorkSheet=(Excel.Worksheet)xlWorkBook.Worksheets.get_项(1);
int i=0;
int j=0;
对于(int h=1;h对于(i=0;i),这里似乎有一些有用的信息:在谷歌搜索“c#write image to excel”时,也出现了一些其他页面。@David我在谷歌中搜索过,但找不到解决方案,如果有人知道,请帮助我。。。