首页 > 其他 > 详细

NPOI将xls文件解析为DataTable类数据

时间:2014-03-04 18:36:41      阅读:591      评论:0      收藏:0      [点我收藏+]
bubuko.com,布布扣
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Data;
using System.Windows.Forms;

using NPOI.SS.UserModel;
using NPOI.HSSF.Util;
using NPOI.HSSF.UserModel;
using NPOI.XSSF.UserModel;  

namespace ExcelDataExtractor
{
    static class TableDataParser
    {
        static IWorkbook hssfworkbook;  
        static public DataTable ImportExcelFile(string filePath)  
        {  
            #region//初始化信息  
            try  
            {                
                using (FileStream file = new FileStream(filePath, FileMode.Open, FileAccess.Read))  
                {  
                    hssfworkbook = new HSSFWorkbook(file);  
                }  
            }  
            catch (Exception e)  
            {
                MessageBox.Show("error:"+e.Message+"\n");
                return (DataTable)null;
            }  
            #endregion  
  
            ISheet sheet = hssfworkbook.GetSheetAt(0);  
            System.Collections.IEnumerator rows = sheet.GetRowEnumerator();

            DataTable dt = new DataTable();    
            //一行最后一个方格的编号 即总的列数  
            for (int j = 0; j < (sheet.GetRow(0).LastCellNum); j++)  
            {  
                dt.Columns.Add(Convert.ToChar(((int)A) + j).ToString());  
            }    
            while (rows.MoveNext())  
            {  
                IRow 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] = null;  
                    }  
                    else  
                    {  
                        dr[i] = cell.ToString();  
                    }  
                }  
                dt.Rows.Add(dr);  
            }  
            return dt;  
        }  
    }
}
bubuko.com,布布扣

NPOI将xls文件解析为DataTable类数据,布布扣,bubuko.com

NPOI将xls文件解析为DataTable类数据

原文:http://www.cnblogs.com/FindSelf/p/3579510.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!