>>>>using System; >>>>using System.Data; >>>>using System.Net.Mime; >>>>using Microsoft.Office.Interop.Excel; >>>>using System.Text; >>>>using System.Reflection; >>>> >>>>namespace ConsoleApplication3 >>>>{ >>>> public class ExcelWrapper >>>> { >>>> public DataSet GetExcel(string fileName) >>>> { >>>> // >>>> // Include a reference to Microsoft.Office.Interop.Excel >>>> // ExcelWrapper wrap = new ExcelWrapper(); >>>> // DataSet ds = wrap.GetExcel(@"c:\development\rda.xls"); >>>> // >>>> // I just ran this against an old spreadsheet an it worked fine. >>>> // >>>> >>>> Application oXL; >>>> Workbook oWB; >>>> Worksheet oSheet; >>>> Range oRng; >>>> try >>>> { >>>> // creat a Application object >>>> oXL = new ApplicationClass(); >>>> // get WorkBook object >>>> oWB = oXL.Workbooks.Open(fileName, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, >>>> Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, >>>> Missing.Value, Missing.Value); >>>> >>>> // get WorkSheet object >>>> oSheet = (Microsoft.Office.Interop.Excel.Worksheet)oWB.Sheets[1]; >>>> System.Data.DataTable dt = new System.Data.DataTable("dtExcel"); >>>> DataSet ds = new DataSet(); >>>> ds.Tables.Add(dt); >>>> DataRow dr; >>>> >>>> StringBuilder sb = new StringBuilder(); >>>> int jValue = oSheet.UsedRange.Cells.Columns.Count; >>>> int iValue = oSheet.UsedRange.Cells.Rows.Count; >>>> // get data columns >>>> for (int j = 1; j <= jValue; j++) >>>> { >>>> dt.Columns.Add("column" + j, System.Type.GetType("System.String")); >>>> } >>>> >>>> //string colString = sb.ToString().Trim(); >>>> //string[] colArray = colString.Split(':'); >>>> >>>> // get data in cell >>>> for (int i = 1; i <= iValue; i++) >>>> { >>>> dr = ds.Tables["dtExcel"].NewRow(); >>>> for (int j = 1; j <= jValue; j++) >>>> { >>>> oRng = (Microsoft.Office.Interop.Excel.Range)oSheet.Cells[i, j]; >>>> string strValue = oRng.Text.ToString(); >>>> dr["column" + j] = strValue; >>>> } >>>> ds.Tables["dtExcel"].Rows.Add(dr); >>>> } >>>> return ds; >>>> } >>>> catch (Exception ex) >>>> { >>>> throw; >>>> } >>>> } >>>> } >>>>} >>>>