一、使用工具NPOI
1.下载链接:点击打开链接
2.引用dosnet4中的dll,在程序中
using NPOI.SS.UserModel
using NPOI.XSSF.UserModel//这是2007以后版本的office需要引用的3.使用wpf程序测试excel解析。
前台xmal:
<Grid> <Button Content="读取XLS文件" Height="23" HorizontalAlignment="Left" Margin="12,12,0,0" Name="btnInstall" VerticalAlignment="Top" Width="75" Click="btnInstall_Click" /> <TextBlock Height="23" HorizontalAlignment="Left" Margin="174,12,0,0" Name="lblLog" Text="" VerticalAlignment="Top" Width="317" /> </Grid>
后台xmal.cs
StringBuilder sbr = new StringBuilder();//字符串操作的类 using (FileStream fs = File.OpenRead(@"c:/myxls.xls")) //打开myxls.xls文件 { XSSFWorkbook wk = new XSSFWorkbook(fs);//把xls文件中数据写入wk中 for (int i = 0; i < 1; i++)//NumberOfSheets是myxls.xls中sheet表数wk.NumberOfSheets { ISheet sheet = wk.GetSheetAt(i);//读取当前sheet表的数据 for (int j = 1; j <= sheet.LastRowNum; j++)//LastRowNum是当前表的行数 { IRow row = sheet.GetRow(j);//读取当前行的数据 if (row != null) { //取各列 for (int n = 0; n <= row.LastCellNum; n++) { ICell cell = row.GetCell(n);//d列的当前cell if (cell != null) { sbr.Append(cell.ToString());//将获取的表格数据转换为字符串类型 } if (n == row.LastCellNum) { lblLog.Text = "数据读取成功"; } } } } } }
4.对读取的内容进行字符串解析
string[] a=null; a=cellstring.Split('\n'); //或者 cellstring.Split(new char[2]{'\r','\n'})5.建数据库表结构,生成相关Model
6.写接口和insert方法
7.调用business接口,最后调整下生成数据库的结构