C#Winform实现高效率导入和导出Excel文件
来源:互联网 发布:linux下配置环境变量 编辑:程序博客网 时间:2024/05/22 06:57
/// <summary> /// 导出Excel文件 /// </summary> /// /// <param name="dataSet"></param> /// <param name="dataTable">数据集</param> /// <param name="isShowExcle">导出后是否打开文件</param> /// <returns></returns> public static bool DataTableToExcel(string filePath, System.Data.DataTable dataTable, bool isShowExcle) { //System.Data.DataTable dataTable = dataSet.Tables[0]; int rowNumber = dataTable.Rows.Count; int columnNumber = dataTable.Columns.Count; int colIndex = 0; if (rowNumber == 0) { return false; } Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet); Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1]; excel.Visible = isShowExcle; Microsoft.Office.Interop.Excel.Range range; foreach (DataColumn col in dataTable.Columns) { colIndex++; excel.Cells[1, colIndex] = col.ColumnName; } object[,] objData = new object[rowNumber, columnNumber]; for (int r = 0; r < rowNumber; r++) { for (int c = 0; c < columnNumber; c++) { objData[r, c] =dataTable.Rows[r][c]; } } range = worksheet.get_Range(excel.Cells[2, 1], excel.Cells[rowNumber + 1, columnNumber]); range.Value2 = objData; range.NumberFormatLocal = "@"; worksheet.SaveAs(filePath, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); //excel.Quit(); return true; }
/// <summary> /// 读取Excel文件数据到DataTable /// </summary> /// <param name="filePath">Excel文件路径</param> private void Import_Excel(string filePath) { string sqlconn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'"; string sql = @"select * from [Sheet1$]"; try { using (OleDbConnection conn = new OleDbConnection(sqlconn)) { using (OleDbDataAdapter adapter = new OleDbDataAdapter(sql, conn)) { System.Data.DataTable dt = new System.Data.DataTable(); adapter.Fill(dt); this.LoadDataGridView(dt); } } } catch (Exception ex) { MessageBox.Show("打开文件出错,错误信息:" + ex.Message.ToString(), "提示"); } }
0 0
- C#Winform实现高效率导入和导出Excel文件
- winForm导入导出EXCEL
- C#Excel导入和导出
- C#Excel导入和导出
- Excel文件导入和导出
- c# Winform程序实现多sheet的Excel文件导入与导出
- 使用PHPExcel实现Excel文件的导入和导出
- 使用PHPExcel实现Excel文件的导入和导出
- C#winForm导出excel
- C#Winform导出Excel
- C#Winform导出Excel
- winform 导出excel文件
- Winform datagridview Excel 导入导出
- JFileChooser实现文件导出导入到Excel
- java实现Excel文件的导入导出
- 使用POI导入和导出 Excel文件
- 使用POI导入和导出Excel文件
- 使用POI导入和导出Excel文件
- hdu 4751 Divide Groups bfs/dfs 连通性的问题 种子染色法
- Eclipse中的Maven插件运行项目中的Goals设置
- shell 脚本学习
- 话中带话,双层含义的语言。
- 剑指offer之编程(十一)
- C#Winform实现高效率导入和导出Excel文件
- Array, ArrayList, LinkedList之间的区别分析
- 详解HTTP中GET和POST的区别
- C语言编程实现使用AES对文件进行加密
- Socket网络通信
- 关于new 与 malloc的一个问题
- Java IO - CharArrayReader&CharArrayWriter
- POJ 3984 迷宫问题(bfs搜索,递归打印)
- CodeVS 1039 数的划分