博主用的是npoi2.0.1,支持.xls也支持.xlsx

直接上代码吧。

  1. <table class="table table-bordered table-striped">
  2. <thead>
  3. <tr>
  4. <th>Shape</th>
  5. <th>Pcs</th>
  6. <th>Sizw</th>
  7. <th>Size Range</th>
  8. <th>Color</th>
  9. <th>Clarity</th>
  10. <th>Rap-Price</th>
  11. <th>Cut</th>
  12. <th>POL</th>
  13. <th>SYM</th>
  14. <th>H&A</th>
  15. <th>FL</th>
  16. <th>Diam/LxW</th>
  17. <th>Dep%</th>
  18. <th>Tab%</th>
  19. <th>Rap%</th>
  20. <th>LAB1</th>
  21. <th>CersNo</th>
  22. <th>LAB2</th>
  23. <th>CersNo</th>
  24. <th>Price/ct¥</th>
  25. </tr>
  26. </thead>
  27. <tbody id="td">
  28. </tbody>
  29. </table>

之后用了jquery.form.js

  1. function uploadFile() {
  2. var options = {
  3. type: "post",
  4. enctype: "multipart/form-data",
  5. url: "UploadExcel",
  6. success: function (data) {
  7. if (data != null) {
  8. $("#td").append(data);
  9. $("#uploadData").css("display", "block");
  10. } else if (data == 0) {
  11. layer.msg('文档加载失败!', { icon: 5 }, function () {
  12. $("#uploadData").css("display", "none");
  13. });
  14. } else if (data == -1) {
  15. layer.msg('数据库连接失败!', { icon: 5 }, function () {
  16. $("#uploadData").css("display", "none");
  17. });
  18. } else {
  19. layer.msg('未知错误!', { icon: 5 }, function () {
  20. $("#uploadData").css("display", "none");
  21. });
  22. }
  23. },
  24. processData: true,
  25. global: true
  26. };
  27. $("#form").ajaxSubmit(options);
  28. }

跟着是动作方法

  1. public ActionResult UploadExcel()
  2. {
  3. string rtn = "";
  4. if (Request.Files.Count > )
  5. {
  6. HttpPostedFileBase file = Request.Files["File"];
  7. string newFile = Server.MapPath("~/Areas/Admin/UploadFile/StockImprot/") + DateTime.Now.ToString("yyyyMMddHHmmss") + file.FileName;
  8. while (System.IO.File.Exists(newFile))
  9. {
  10. newFile = Server.MapPath("~/Areas/Admin/UploadFile/StockImprot/") + DateTime.Now.ToString("yyyyMMddHHmmss") + file.FileName;
  11. }
  12. file.SaveAs(newFile);
  13. DataTable ds = ExcelHelper.GetDataTable(newFile);
  14. if (ds != null)
  15. {
  16. if (ds.Rows != null)
  17. {
  18. ViewData["datatable"] = ds;
  19. return PartialView("_PartialDataTable"); //注意这里返回是的局部视图哦
  20. }
  21. }
  22. else
  23. {
  24. rtn = ""; //文档加载失败
  25. }
  26. }
  27. else
  28. {
  29. rtn = "-1";
  30. }
  31. return Content(rtn);
  32. }

局部视图的代码

  1. @if (ViewData["datatable"] != null)
  2. {
  3. System.Data.DataTable dt = ViewData["datatable"] as System.Data.DataTable;
  4. foreach (System.Data.DataRow dr in dt.Rows)
  5. {
  6. <tr>
  7. <td>@dr[].ToString()</td>
  8. <td>@dr[].ToString()</td>
  9. <td>@dr[].ToString()</td>
  10. <td>@dr[].ToString()</td>
  11. <td>@dr[].ToString()</td>
  12. <td>@dr[].ToString()</td>
  13. <td>@dr[].ToString()</td>
  14. <td>@dr[].ToString()</td>
  15. <td>@dr[].ToString()</td>
  16. <td>@dr[].ToString()</td>
  17. <td>@dr[].ToString()</td>
  18. <td>@dr[].ToString()</td>
  19. <td>@dr[].ToString()</td>
  20. <td>@dr[].ToString()</td>
  21. <td>@dr[].ToString()</td>
  22. <td>@dr[].ToString()</td>
  23. <td>@dr[].ToString()</td>
  24. <td>@dr[].ToString()</td>
  25. <td>@dr[].ToString()</td>
  26. <td>@dr[].ToString()</td>
  27. <td>@dr[].ToString()</td>
  28. </tr>
  29. }
  30. }

最后上一张效果图

---------------------------------------------------------------------------------------------------------

转载请记得说明作者和出处哦-.-
作者:KingDuDu
原文出处:https://www.cnblogs.com/kingdudu/articles/4745151.html

---------------------------------------------------------------------------------------------------------

【第二篇】.NET用NPOI读取Excel表格并在页面预览的更多相关文章

  1. 使用NPOI读取Excel表格内容并进行修改

    前言 网上使用NPOI读取Excel文件的例子现在也不少,本文就是参考网上大神们的例子进行修改以适应自己需求的. 参考博文 http://www.cnblogs.com/restran/p/38894 ...

  2. NPOI读取Excel表格类

    public class NPOIHelper    {        private HSSFWorkbook workbook;        public static IWorkbook Lo ...

  3. .NET Core 使用NPOI读取Excel返回泛型List集合

    我是一名 ASP.NET 程序员,专注于 B/S 项目开发.累计文章阅读量超过一千万,我的博客主页地址:https://www.itsvse.com/blog_xzz.html 网上有很多关于npoi ...

  4. C# 读取Excel表格内容,以及NPOI的使用

    在实际的开发中,我们可能需要读写word或者Excel的内容,在我开发的项目中,需要读取Excel的内容,并将相对应的内容存储到数据库中,这里简单跟大家分享一下,希望能够帮助一些人. 我相信在读写wo ...

  5. NPOI读取Excel遇到的坑

    NPOI是POI的.NET版本.POI是用Java写成的库,能帮助用户在没有安装Office环境下读取Office2003-2007文件.NPOI在.NET环境下使用,能读写Excel/Word文件. ...

  6. 使用NPOI读取Excel数据并写入SQLite

    首先,我们来建一个数据库,我们就叫Hello.db(不一定是db后缀,你可以sqlite,sqlite3,db3)都可以作为识别,然后往里面建一个空的表格,如下图所示 然后建一个Excel表格,往表格 ...

  7. NPOI读取Excel帮助类,支持xls与xlsx,实现公式解析,空行的处理

    NPOI读取Excel(2003或者2010)返回DataTable.支持公式解析,空行处理. /// <summary>读取excel /// 默认第一行为表头 /// </sum ...

  8. 读取Excel表格中数据原型

    写下这篇博客来记录自己的工作,这部分功能是读取Excel表格中的数据,并通过c#中的datagridview控件将读取的数据显示出来.为了方便用户,我设计了一个read按钮,用户点击这个按钮,会弹出打 ...

  9. 使用NPOI读取Excel数据到DataTable

    如今XML文件的存储格式大行其道,可是也不是适用于全部情况,非常多单位的数据交换还是使用Excel的形式.这就使得我们须要读取Excel内的数据.载入到程序中进行处理.可是如何有效率的读取,如何使程序 ...

随机推荐

  1. POJ 1631

    #include <iostream> #define MAXN 500005 using namespace std; int T[MAXN]; int binary_search(in ...

  2. Windbg 常用命令整理

    kd> !idt -a      查看idt kd> dt _ktrap_frame   异常帧 kd> ba e1 Address 下硬件执行断点kd> ba w4 Addr ...

  3. 用eclipse创建maven项目

    Maven是基于项目对象模型(POM),也可以进行模块化开发.并且是个强大的管理工具.本经验用eclipse来创建maven项目 步骤: 1.下载并正确安装eclipse 2.在eclipse上成功安 ...

  4. 连接池和 "Timeout expired"异常

    转自:博客园宁静.致远:http://www.cnblogs.com/zhangzhu/archive/2013/10/10/3361197.html 异常信息: MySql.Data.MySqlCl ...

  5. unity3d设置3D模型显示在2D背景之前(多个相机分层显示)(转)

    解决步骤: 1.添加一个摄像机,命名为BackgroundCamera,然后在Layer添加一个background层.并且将plane拖放到改相机节点下. 然后将BackgroundCamera和P ...

  6. hdu 1847 Good Luck in CET-4 Everybody!(简单博弈SG)

    #include<stdio.h> #include<string.h> #define N 1010 int hash[N]; int sg[N]; void GetSG() ...

  7. SPRING IN ACTION 第4版笔记-第十一章Persisting data with object-relational mapping-003编写JPA-based repository( @PersistenceUnit、 @PersistenceContext、PersistenceAnnotationBeanPostProcessor)

    一.注入EntityManagerFactory的方式 package com.habuma.spittr.persistence; import java.util.List; import jav ...

  8. python urllib2的proxyhandler

    1. 再a方法中新建了个opener,使用了代理: proxydict = {} proxydict['http'] = "http://%s:%s"%(ip,port) #pri ...

  9. 296. Best Meeting Point

    题目: A group of two or more people wants to meet and minimize the total travel distance. You are give ...

  10. ADB调试桥安装(方式二)

    想使用ADB工具可以通过安装安卓SDK套件,然后通过SDK里面的adb工具连接手机进行调试, 然而这种方式安装起来多多少少还是有点麻烦,ADB调试桥安装(方式一). 另一种方式来的就更为舒服一些了,即 ...