zoukankan      html  css  js  c++  java
  • 【C#】#101 导入导出Excel

    项目需求:  1、把数据导出到Excel;  2、把Excel数据导入到数据库

    使用的类库:  Aspose.Cells    ExcelHelper.zip下载

    一、导出【调用已经封装好的方法】【未封装的方法,步骤有主要有两个,a. 添加表头   b. 添加数据部分

    1. 打开一个文本保存对话框【SaveFileDialog控件】
    2. 调用ExcelHelper类的DataTableToExcel方法导出
    /// <summary>
            /// 导出Excel
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnExeclOutput_Click(object sender, EventArgs e)
            {
                string localFilePath = String.Empty;
    
                SaveFileDialog saveFileDialog1 = new SaveFileDialog();
                //设置文件类型  
                saveFileDialog1.Filter = " xls files(*.xls)|*.txt|All files(*.*)|*.*";
                //设置文件名称:
                saveFileDialog1.FileName = DateTime.Now.ToString("yyyyMMddHHmm") + "-" + "员工管理表.xls";
                //保存对话框是否记忆上次打开的目录  
                saveFileDialog1.RestoreDirectory = true;
    
                if (saveFileDialog1.ShowDialog() == DialogResult.OK)
                {
                    //获得文件路径  
                    localFilePath = saveFileDialog1.FileName.ToString();
                    DataTable dt = (DataTable)dgvTb.DataSource;
    
                    bool flag = new Common.ExcelHelper(localFilePath,"").DatatableToExcel(dt);
                    if (flag)
                    {
                        MessageBox.Show("导出成功!,导出数据条数: "+dt.Rows.Count +"");
                    }
                    else
                    {
                        MessageBox.Show("导出失败!");
                    }
                }
            }

    二、导入: 【导入返回一个DataTable】

    1. 打开一个Excel,只要传入Excel文件的路径
    2. 设置从第二行的数据开始获取【不获取表头】
    /// <summary>
    /// 导入
    /// </summary>
    /// <returns></returns>
    public DataTable ExcelToDatatalbe()
    {
        //打开Excel
        Workbook book = new Workbook(fullFilename);
        Worksheet sheet = book.Worksheets[0];
        Cells cells = sheet.Cells;
    
        //获取excel中的数据保存到一个datatable中
        DataTable dt_Import = cells.ExportDataTableAsString(0, 0, cells.MaxDataRow + 1, cells.MaxDataColumn + 1, true);
        return dt_Import;
    }

    项目执行截图:

    image

    导入Excel截图:

    image

  • 相关阅读:
    微信:JSSDK开发
    JSSDK图像接口多张图片上传下载并将图片流写入本地
    微信JSSDK上传多张图片
    laravel自定义公共函数的引入
    php把数据转换为json格式
    laravel控制器方法中,用函数作为变量进行传递时的处理方法
    ckeditor富文本编辑器的基本配置设置:
    laravel处理菜单保持的方法:
    laravel基于Bootstrap的成功和失败的提示信息和验证提示信息
    laravel Eloquent 查询数据库判断获取的内容是否为空
  • 原文地址:https://www.cnblogs.com/zhongxia/p/4248969.html
Copyright © 2011-2022 走看看