国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

NPOI讀取Excel

2019-11-14 16:39:00
字體:
來源:轉載
供稿:網(wǎng)友

項目環(huán)境:Webform framework4.0

dll版本:NPOI2.0  dotnet2.0版本

這兩天要做個Excel導入的功能,想到以前用過NPOI,感覺很給力,今天寫了個DEMO,寫的時候還算順利,畢竟以前用過,還是想記錄下來,留著以后直接復制

把excel數(shù)據(jù)讀取并拼接到DataTable中,為了使用SqlBulkCopy一次性拷貝到數(shù)據(jù)庫

 1             IWorkbook workbook = null; 2             string fileExt = Path.GetExtension(path); 3             try 4             { 5                 using (var file = new FileStream(path, FileMode.Open, Fileaccess.Read)) 6                 { 7                     if (fileExt == ".xls") 8                         workbook = new HSSFWorkbook(file); 9                     else if (fileExt == ".xlsx")10                         workbook = new XSSFWorkbook(file);11                     else12                     {13 14                     }15                 }16             }17             catch (Exception ex)18             { }
View Code
 1 //獲取sheet頁 2             var sheet = workbook.GetSheetAt(0); 3             //獲取總條數(shù) 4             int RowCount = sheet.LastRowNum; 5             //獲取sheet頁的第一條數(shù)據(jù) 6             IRow firstRow = sheet.GetRow(0); 7             //獲取總列數(shù) 8             int CellCount = firstRow.LastCellNum; 9 10             DataTable dt = new DataTable();11             for (int j = 0; j < CellCount; j++)12             {13                 string value = firstRow.GetCell(j).StringCellValue;14                 DataColumn dc = new DataColumn(value, typeof(String));15                 dt.Columns.Add(dc);16             }17 18             for (int i = 1; i <= RowCount; i++)19             {20                 IRow row = sheet.GetRow(i);21                 DataRow dr = dt.NewRow();22                 for (int j = 0; j < CellCount; j++)23                 {24                     object obj = row.GetCell(j);25                     if (obj != null)26                         dr[j] = obj.ToString();27                     else28                         dr[j] = "";29                 }30                 dt.Rows.Add(dr);31             }
View Code

最后使用SqlBulkCopy

SqlBulkCopy sqlbulkcopy = new SqlBulkCopy(connectionString, SqlBulkCopyOptions.UseInternalTransaction);sqlbulkcopy.DestinationTableName = "Table_1";//數(shù)據(jù)庫中的表名sqlbulkcopy.WriteToServer(dataset.Tables[0]);

 


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 城市| 新闻| 高雄市| 商丘市| 临沂市| 怀柔区| 靖西县| 手机| 双辽市| 永善县| 潞城市| 定南县| 隆昌县| 桦甸市| 沂水县| 南开区| 邻水| 红原县| 阿坝县| 大安市| 新宁县| 微博| 汉川市| 蓝山县| 垣曲县| 新龙县| 五大连池市| 无极县| 闽清县| 城口县| 台东市| 陵川县| 鄂托克前旗| 大厂| 宜川县| 安远县| 兴业县| 湟中县| 枞阳县| 桂林市| 霍城县|