2019独角兽企业重金招聘Python工程师标准>>>

        //导入excel文件protected void ImportExcel_Click(object sender, EventArgs e){string getErrorMsg = "";//FileUpload1是asp.net里文件上传控件的id,加在前台页面if (!FileUpload1.HasFile){Response.Write("<script>alert('请选择你要导入的Excel文件');</script>");return;}//获取文件的后缀名string fileExt = System.IO.Path.GetExtension(FileUpload1.FileName);if (fileExt != ".xls"){Response.Write("<script>alert('文件类型错误!');</script>");return;}//这里后面要适配xlsxstring fileName = FileUpload1.PostedFile.FileName;FileUpload1.PostedFile.SaveAs(Server.MapPath("PostedFiles/" + fileName));//这个适配语句是适合excel2007版本以下的string connstring = "Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\";Data Source=" + Server.MapPath("PostedFiles/" + fileName);//下面这个是针对2007及以上的//string connstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1';";            DataSet ds = new DataSet();using (OleDbConnection conn = new OleDbConnection(connstring)){conn.Open();DataTable sheetsNames = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });//得到所有sheet的名字string firstSheetName = sheetsNames.Rows[0][2].ToString(); //得到第一个sheet的名字string sql = string.Format("SELECT * FROM [{0}]", firstSheetName);OleDbDataAdapter ada = new OleDbDataAdapter(sql, connstring);ada.Fill(ds);}}

几个注意点:

1: 报错“外部表不是预期的格式。”  

问题原因:

这个excel文件可能是你自己用程序导出的(等会儿有空写下导出excel文件),

用记事本打开你的excel文件,
若是html代码,则表示你的excel文件格式不是标准的excel格式,才会提示“外部表不是预期的格式”的错误;
若是乱码,则可以成功导入。

 解决方法:

(1)新建一个excel,往里写数据

(2) 用EXCEL另存为功能另存成标准格式XLS格式(Response导出的其实是网页文件)

2.对从文件中取出来的dataset进行操作(比如存进数据库)

报错“无法找到表 0”

问题原因:

(1)可能是ds里就没有成功读到东西,当然ds.Tables[0]也就会出错

(2)如果是从本地上传excel到服务端,服务端不能直接读到客户端的那个文件,检查是否在服务端save成功了。

如果还有问题不能解决或有疑问,请留言~尽快会回复

转载于:https://my.oschina.net/zmixed/blog/716940

ASP.NET 导入 Excel相关推荐

  1. asp.net 导入excel显示进度

    这几天在做个导入excel的上传页面,由于数据量太大,要显示个进度条,本人不懂jquery,所以百度完再经过调整之后完成了,如果告诉别人只是为了显示个进度条而弄个多线程,还要根据session的机制模 ...

  2. ASP实现导入Excel数据到数据库的方法

    以下代码为转载,未经验证,仅供参考: <% Response.CodePage=65001%> <% Response.Charset="UTF-8" %> ...

  3. java ajax 导入excel_Ajax asp.net 导入Excel

    $("#btnUploadExcelSave").click(function () { var fileObj = document.getElementById("f ...

  4. Asp.net 导入Excel(服务器不带Office)

    #region 把excel文件转换为DataSet. /// <summary> /// 把excel文件转换为DataSet. /// </summary> /// < ...

  5. asp.net采用OLEDB方式导入Excel数据时提示:未在本地计算机上注册Microsoft.Jet.OLEDB.4.0 提供程序...

    笔者在项目中做做了一个从Excel表格中导入数据的模块.大体上asp.net项目中导入Excel大体分成三类: 1)采用c#内置方案System.Data.OleDb(限制较小, 通用) 2)采用Ex ...

  6. Asp.net 批量导入Excel用户数据功能加强版

    平时我们用Asp.net导入用户,一般是提供一个用户Excel表的模板,实际导入数据时并非有些人愿意按你的模版制表,因此对Asp.net导入功能进行加强,可以导入非模版化的Excel数据,并且支持一次 ...

  7. ASP.NET MVC Excel 导入导出 ASP.NET Web API Excel 下载 C# Excel 导入导出

    注意:服务器需要安装office软件 1.Excel导入    提示:未在本地计算机上注册"Microsoft.Jet.OLEDB.4.0"提供程序.               ...

  8. asp做一个excel导入到access的功能

    因为一个客户要用asp做一个excel导入到access的功能,最近查找了一下相关的文章,现总结了一下精华部分! 其实这个功能的原理很简单,因为excel本身就可以当做数据库的,所以只需要将excel ...

  9. ASP.NET将EXCEL导入SQL SERVER数据库的代码

    ASP.NET将EXCEL导入SQL SERVER数据库的代码 2007-11-13 10:36 在网上找到一个Asp.Net将Excel数据导入Sql Server数据库的的例子,是调用存储过程的, ...

最新文章

  1. 单词前后位置颠倒,大小写颠倒
  2. android版多功能日历,欢迎大家测试
  3. 云服务器 ECS Linux 系统下使用 dig 命令查询域名解析
  4. Qt Creator优化移动设备的应用程序
  5. 题目1065:输出梯形 (直接用循环控制输出)+题目1432:叠筐 (数组控制形状,最后输出数组)...
  6. React之函数中的this指向
  7. Spring Boot 2.x基础教程:找回启动日志中的请求路径列表
  8. 一阶低通滤波器方程_一阶RC低通滤波器杂记
  9. php mysql 到表最后_如何在PHP中获取MySQL表的最后插入ID?
  10. 使用github+hexo搭建静态博客
  11. php markdown 电子书_PHP Markdown转PDF解决方案
  12. android连mysql注册界面代码_Android实现注册登录界面的实例代码
  13. 云计算基础与应用 - 云计算架构
  14. 固态硬盘寿命测试一年半 寿命指数超乎想象 连写2500TB终于全挂
  15. 关于调用Excel.Application报错的解决方法
  16. 2022年中国手机市场销量vivo第1,小米滑落至第5
  17. 所有的伟大都源于一次勇敢的开始
  18. MIT又出新玩法,利用AI可轻松分离视频中的乐器声音
  19. sprintf_s、_snprintf与_snprintf_s
  20. 图像识别与处理——图像的表示与通道数问题

热门文章

  1. 【转】Pro Android学习笔记(二六):用户界面和控制(14):RelativeLayout
  2. 公司有内部推荐的名额
  3. CV学习笔记-图像滤波器
  4. WordPress学习笔记(三)其他功能
  5. package ‘catkin‘ depends on non-existent package ‘python3-catkin-pkg‘
  6. educoder实训平台python顺序结构答案_传智播客升级实训课程,打造高分项目实战网课助力高校在线实训...
  7. 目标服务器已挂起重新启动_CentOS 7 Apache 服务器证书安装
  8. 树莓派4做服务器哪个系统好,【树莓派】树莓派4无痛安装系统(NOOBS篇)
  9. 150分试卷c语言,连续5道C语言题目一共送150分啊,题目2.一个农场有头母牛,现 爱问知识人...
  10. python下列数据中不属于字符串的是_下列数据中,不属于字符串的是( )。 (6.0分)_学小易找答案...