Convert Datatable To Excel File C Using Epplus

[Solved] Convert Datatable To Excel File C Using Epplus | Vb - Code Explorer | yomemimo.com
Question : Convert DataTable to excel file c# using epplus

Answered by : edwin-a-deloso

 /// <summary> /// Convert DataTable to Excel File /// </summary> /// <param name="filePath">Excel FilePath</param> /// <param name="table">DataTable</param> /// <param name="fileName">Excel Filename</param> /// <returns></returns> public bool Write(string filePath, DataTable table, string fileName) { try { bool success = false; var today = Convert.ToDateTime(DateTime.Now).ToString("yyyyMMddHHmmss"); //delete existing files // Util_Directory.DeleteFiles(filePath); var newDir = filePath + "\\" + today; //if dir not exist create Util_Directory.CreateDirectory(newDir); FileInfo file = new FileInfo(Path.Combine(newDir, fileName)); ExcelPackage.LicenseContext = LicenseContext.NonCommercial; using (var package = new ExcelPackage(file)) { var workSheet = package.Workbook.Worksheets.Add("Sheet1"); //add column headers var columns = table.Columns.Cast<DataColumn>().Select(x => x.ColumnName).ToList(); int i = 1; foreach (var column in columns) { workSheet.Cells[1, i].Value = column; i++; } // add row values int startRow = 2; foreach (DataRow row in table.Rows) { int startColumn = 1; foreach (var item in row.ItemArray) { workSheet.Cells[startRow, startColumn].Value = item; startColumn++; } startRow++; } workSheet.Cells.AutoFitColumns(); package.Save(); success = true; } return success; } catch (Exception) { throw; } }

Source : | Last Update : Tue, 17 May 22

Question : convert excel to datatable using epplus

Answered by : edwin-a-deloso

 readonly DataTable dt = new DataTable(); /// <summary> /// Convert excel file to DataTable by xml configuration /// </summary> /// <param name="xmllFilePath">xml filepath</param> /// <param name="excelFilePath">excel filePath</param> /// <returns>DataTable</returns> public DataTable Read(string xmllFilePath, string excelFilePath) { try { List<string> xmlColumns = MiscUtil.ExtractXMLToList(xmllFilePath); List<string> xcelColumnNames = new List<string>(); FileInfo excelFile = new FileInfo(excelFilePath); ; ExcelPackage.LicenseContext = LicenseContext.NonCommercial; using (ExcelPackage package = new ExcelPackage(excelFile)) { //get colmuns and store to list ExcelWorksheet workSheet = package.Workbook.Worksheets[0]; { for (int i = 1; i <= workSheet.Dimension.End.Column; i++) { xcelColumnNames.Add(workSheet.Cells[1, i].Value.ToString()); } } //get indexes to compare xml and excel columns Dictionary<string, int> indexes = MiscUtil.GetDictionaryOfListArray(xmlColumns, xcelColumnNames.ToArray()); //get the match columns and add to datatable columns foreach (var header in indexes) { if (header.Value >= 0) { dt.Columns.Add(header.Key); } } // add rows foreach (ExcelWorksheet workSheetR in package.Workbook.Worksheets) { // int columnCnt = workSheetR.Dimension.End.Column; int rowCnt = workSheetR.Dimension.End.Row; var dicValue = indexes.Select(x => x.Value).ToList(); List<int> lstOfMatchColumn = dicValue.FindAll(x => x >= 0); List<string> columns = new List<string>(); for (int row = 2; row <= rowCnt; row++) { foreach (var col in lstOfMatchColumn) { columns.Add(workSheetR.Cells[row, col + 1].Value?.ToString().Trim()); } string[] columnsArray = MiscUtil.ConvertListToArray(columns); dt.Rows.Add(columnsArray); //clear so it will be new list of columns columns.Clear(); } } } return dt; } catch (Exception ex) { throw new Exception(ex.Message); }

Source : | Last Update : Tue, 17 May 22

Answers related to convert datatable to excel file c using epplus

Code Explorer Popular Question For Vb