本文主要是介绍页面传入Excel表格,Aspose.cells导入功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
页面传入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表格,Aspose.cells导入功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!