页面传入Excel表格,Aspose.cells导入功能
2017-01-26 16:21
309 查看
页面传入Excel表格,Aspose.cells导入功能,由于从页面传入Excel,多说情况下浏览器会设置fakepath,很难知道具体路径。所以我不打算使用带路径的方式打开Excel文件,有如下Excel表格:
将个字段存入数据库,效果如下
首先前端上传EXcel表格和普通的上传附件一样,具体操作分享下链接:
http://blog.csdn.net/sinat_35165183/article/details/53730808
然后服务器端接收参数
在创建工作簿对象时候使用file字节流作为构造函数参数
主要代码如下:
#region 导入
public ActionResult LCLJXZCYEnter(string paraYQ_1,
string ksdm_1,
string ksmc_1,
HttpPostedFileBase file)
{
Workbook workbook
= new Workbook(file.InputStream);
//创建工作簿对象
WorksheetCollection worksheets
= workbook.Worksheets;
//创建工作表对象
if (workbook.Worksheets.Count
> 0)
{
for (var i
= 0;
i < worksheets.Count;
i++)
{
string sheetName
= worksheets[i].Name;
Worksheet worksheet
= workbook.Worksheets[i];
Cells cells
= worksheet.Cells;
string title= cells[0,
0].StringValue;
MatchCollection myMathches
= Regex.Matches(title,
@"\D+");
viewModels.HXTZ_LCLJXZCY.KSMC= myMathches.ToString();
var test="";
int flag
= 0;
foreach (Match nextMatch
in myMathches)
{
flag++;
if (flag
== 1){
test
= nextMatch.ToString();
viewModels.HXTZ_LCLJXZCY.KSMC
=test;
}
}
for (var j= 1;
j < cells.MaxDataRow
+ 1;
j++)
{
for (var k
= 0;
k< cells.MaxDataColumn
+ 1;
k++)
{
// var test=cells[j, k].StringValue.Trim();
if (cells[1,
k].StringValue.Trim()
== "姓名" && j>1)
{
viewModels.HXTZ_LCLJXZCY.XM
= cells[j, k].StringValue;
}
if (cells[1,
k].StringValue.Trim()
== "职称" && j
> 1)
{
viewModels.HXTZ_LCLJXZCY.ZC
= cells[j, k].StringValue;
}
if (cells[1,
k].StringValue.Trim()
== "职务" && j
> 1)
{
viewModels.HXTZ_LCLJXZCY.ZW= cells[j,
k].StringValue;
}
if (cells[1,
k].StringValue.Trim()
== "联系方式" && j
> 1)
{
viewModels.HXTZ_LCLJXZCY.LXFS= cells[j,
k].StringValue;
}
}
if (j
> 1)
{
//插入数据库
lcljxzcyBLL.DataInsert(viewModels.HXTZ_LCLJXZCY);
}
}
}
}
return Redirect("LCLJJLB");
}
将个字段存入数据库,效果如下
首先前端上传EXcel表格和普通的上传附件一样,具体操作分享下链接:
http://blog.csdn.net/sinat_35165183/article/details/53730808
然后服务器端接收参数
在创建工作簿对象时候使用file字节流作为构造函数参数
主要代码如下:
#region 导入
public ActionResult LCLJXZCYEnter(string paraYQ_1,
string ksdm_1,
string ksmc_1,
HttpPostedFileBase file)
{
Workbook workbook
= new Workbook(file.InputStream);
//创建工作簿对象
WorksheetCollection worksheets
= workbook.Worksheets;
//创建工作表对象
if (workbook.Worksheets.Count
> 0)
{
for (var i
= 0;
i < worksheets.Count;
i++)
{
string sheetName
= worksheets[i].Name;
Worksheet worksheet
= workbook.Worksheets[i];
Cells cells
= worksheet.Cells;
string title= cells[0,
0].StringValue;
MatchCollection myMathches
= Regex.Matches(title,
@"\D+");
viewModels.HXTZ_LCLJXZCY.KSMC= myMathches.ToString();
var test="";
int flag
= 0;
foreach (Match nextMatch
in myMathches)
{
flag++;
if (flag
== 1){
test
= nextMatch.ToString();
viewModels.HXTZ_LCLJXZCY.KSMC
=test;
}
}
for (var j= 1;
j < cells.MaxDataRow
+ 1;
j++)
{
for (var k
= 0;
k< cells.MaxDataColumn
+ 1;
k++)
{
// var test=cells[j, k].StringValue.Trim();
if (cells[1,
k].StringValue.Trim()
== "姓名" && j>1)
{
viewModels.HXTZ_LCLJXZCY.XM
= cells[j, k].StringValue;
}
if (cells[1,
k].StringValue.Trim()
== "职称" && j
> 1)
{
viewModels.HXTZ_LCLJXZCY.ZC
= cells[j, k].StringValue;
}
if (cells[1,
k].StringValue.Trim()
== "职务" && j
> 1)
{
viewModels.HXTZ_LCLJXZCY.ZW= cells[j,
k].StringValue;
}
if (cells[1,
k].StringValue.Trim()
== "联系方式" && j
> 1)
{
viewModels.HXTZ_LCLJXZCY.LXFS= cells[j,
k].StringValue;
}
}
if (j
> 1)
{
//插入数据库
lcljxzcyBLL.DataInsert(viewModels.HXTZ_LCLJXZCY);
}
}
}
}
return Redirect("LCLJJLB");
}
相关文章推荐
- web页面添加使用excel表格批量导入功能
- NPOI、MyXls、Aspose.Cells 导入导出Excel
- NPOI、MyXls、Aspose.Cells 导入导出Excel(转)
- 使用Qt通过cgi导入文件并显示在页面上并做类似Action功能的跳转
- itextsharp、Aspose.Words、Aspose.Cells联合使用
- 如何在.aspx页面上做导入Excel功能?
- itextsharp、Aspose.Words、Aspose.Cells联合使用
- excel 在线预览类库:Aspose.Cells.dll
- FileUpload上传Excel文件,Aspose导入数据至数据库(web)
- Excel操作帮助类 (基于Aspose.Cells.dll)
- C# 读写Excel的一些方法,Aspose.Cells.dll
- 通过Aspose实现文件对象嵌入Word功能
- C#做的一个在vs2010中导入Excel表格的功能
- Android Studio 2.0 Preview发布Instant Run功能(内附:AS 2.0Preview 导入以前版本的设置)
- C# 基于Aspose.Cells的数据导出到Excel
- SpringMVC 导入excel表格获取内容,操作后输入页面
- 对Aspose.Cells Excel文件操作的扩展
- [导入]基于Web的RSS阅读器,新增加“加入收藏夹”功能,欢迎试用。
- 页面的表格导入到WORD文件中去
- [新功能]在管理页面查看自己发表过的评论