/// <summary>
        /// 读EXCEL到HSSFWorkbook
        /// </summary>
        /// <param name="path"></param>
        /// <returns></returns>
        public HSSFWorkbook InitWorkbook(string path)
        {
            HSSFWorkbook wb=null;

            using (FileStream file = new FileStream(path, FileMode.Open, FileAccess.Read))
            {
                wb = new HSSFWorkbook(file);
            }

            return wb;
        }

        /// <summary>
        /// 把HSSFWorkbook转换成DataSet中
        /// </summary>
        /// <param name="wb"></param>
        /// <returns></returns>
        public DataSet ConvertToDataSet(HSSFWorkbook wb)
        {
            DataSet ds = new DataSet();
            int sheetCount=wb.NumberOfSheets;

            for (int c = 0; c < sheetCount; c++)
            {
                ISheet sheet = wb.GetSheetAt(c);
                System.Collections.IEnumerator rows = sheet.GetRowEnumerator();
                DataTable dt = new DataTable();

                #region dt添加column
                int colCount = 0;
                while (rows.MoveNext())
                {
                    if (colCount < ((HSSFRow)rows.Current).LastCellNum)
                        colCount = ((HSSFRow)rows.Current).LastCellNum;
                }

                for (int j = 0; j < colCount; j++)
                {
                    dt.Columns.Add(j.ToString());
                }
                #endregion

                rows.Reset();
                while (rows.MoveNext())
                {
                    #region 把sheet中的值Copy到dt
                    HSSFRow row = (HSSFRow)rows.Current;
                    DataRow dr = dt.NewRow();
                    for (int i = 0; i < row.LastCellNum; i++)
                    {
                        ICell cell = row.GetCell(i);
                        if (cell != null)
                        {
                            dr[i] = cell.ToString();
                        }
                    }
                    dt.Rows.Add(dr);
                    #endregion
                }

                ds.Tables.Add(dt);
            }

            return ds;
        }

   /// <summary>
        /// 把DataSet读到HSSFWorkbook中
        /// </summary>
        /// <param name="ds"></param>
        /// <returns></returns>
        public HSSFWorkbook ConvertToWorkbook(DataSet ds)
        {
            HSSFWorkbook wb = new HSSFWorkbook();

            foreach (DataTable dt in ds.Tables)
            {
                ISheet sheet= wb.CreateSheet(dt.TableName);
                for (int i = 0; i < dt.Rows.Count;i++ )
                {
                    IRow row= sheet.CreateRow(i);
                    foreach (DataColumn dc in dt.Columns)
                    {
                        ICell cell= row.CreateCell(dc.Ordinal);
                        cell.SetCellValue(dt.Rows[i][dc.Ordinal].ToString());
                    }
                }
            }

            return wb;
        }

        public void SaveToExcel(string path,HSSFWorkbook wb)
        {
            FileStream fs = new FileStream(path, FileMode.Create, FileAccess.ReadWrite);
            wb.Write(fs);
            fs.Close();
        }