`
niunan
  • 浏览: 721252 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

ASP.NET中读取excel内容,并显示在界面上

    博客分类:
  • .NET
阅读更多
    项目中经常会用到把excel的文件内容导入到数据库中的,刚刚花了点时间,做了个例子,基本上能实现导入Excel后显示的功能吧,导入的excel文件得是xls,即是2003的.
    代码思路如下:要读取的excel文件必得得是在本地硬盘,所以一般来说都是让远程用户选择自己硬盘上的Excel文件,然后把用户选择的文件上传到本地服务器上,再在本地服务器上进行操作.我把界面后置代码重要部分贴出来,大家自己慢慢看吧,都有注释了.
// 上传按钮
    protected void btnUp_Click(object sender, EventArgs e)
    {
        bool b = Upload(fuExcel);  // 上传excel文件
        if (!b)
        {
            return;
        }
        string name = fuExcel.FileName;
        string filepath = Server.MapPath("~/upload/") + name;
        DataSet ds = ExcelDataSource(filepath, ExcelSheetName(filepath)[0].ToString());
        GridView1.DataSource = ds;
        GridView1.DataBind();
    }

    //上传文件方法
    private bool Upload(FileUpload myFileUpload)
    {
        bool flag = false;
        //是否允许上载
        bool fileAllow = false;
        //设定允许上载的扩展文件名类型
        string[] allowExtensions = { ".xls" };

        //取得网站根目录路径
        string path = HttpContext.Current.Request.MapPath("~/upload/");
        //检查是否有文件案
        if (myFileUpload.HasFile)
        {
            //取得上传文件之扩展文件名,并转换成小写字母
            string fileExtension = System.IO.Path.GetExtension(myFileUpload.FileName).ToLower();
            //检查扩展文件名是否符合限定类型
            for (int i = 0; i < allowExtensions.Length; i++)
            {
                if (fileExtension == allowExtensions[i])
                {
                    fileAllow = true;
                }
            }

            if (fileAllow)
            {
                try
                {
                    //存储文件到文件夹
                    myFileUpload.SaveAs(path + myFileUpload.FileName);
                    lblMes.Text = "文件导入成功";
                    flag = true;
                }
                catch (Exception ex)
                {
                    lblMes.Text += ex.Message;
                    flag = false;
                }
            }
            else
            {
                lblMes.Text = "不允许上载:" + myFileUpload.PostedFile.FileName + ",只能上传xls的文件,请检查!";
                flag = false;
            }
        }
        else
        {
            lblMes.Text = "请选择要导入的excel文件!";
            flag = false;
        }
        return flag;
    }

    //该方法实现从Excel中导出数据到DataSet中,其中filepath为Excel文件的绝对路径, sheetname为excel文件中的表名
    public DataSet ExcelDataSource(string filepath, string sheetname)
    {
        string strConn;
        strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties=Excel 8.0;";
        OleDbConnection conn = new OleDbConnection(strConn);
        OleDbDataAdapter oada = new OleDbDataAdapter("select * from [" + sheetname + "]", strConn);
        DataSet ds = new DataSet();
        oada.Fill(ds);
        conn.Close();
        return ds;
    }

    //获得Excel中的所有sheetname。
    public ArrayList ExcelSheetName(string filepath)
    {
        ArrayList al = new ArrayList();
        string strConn;
        strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filepath + ";Extended Properties=Excel 8.0;";
        OleDbConnection conn = new OleDbConnection(strConn);
        conn.Open();
        DataTable sheetNames = conn.GetOleDbSchemaTable
        (System.Data.OleDb.OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
        conn.Close();
        foreach (DataRow dr in sheetNames.Rows)
        {
            al.Add(dr[2]);
        }
        return al;
    }

要注意的是我们要一开始就在网站根目录下建立upload文件夹,而且要把他的权限设置为可读可写的?这个权限的问题搞得头大,不知道到底应该怎么搞的,XP系统下新建立的文件夹好像都是只读的,我右键属性把只读去掉,结果再次查看的时候还是只读,不过好像发现对程序没有什么意思,上传完excel文件后还是可以读取查看的.
下面是源码:
分享到:
评论

相关推荐

    ASP.net中读取execl内容

    ### ASP.NET中读取Excel内容并显示在界面上的知识点详解 #### 一、背景介绍 在企业级应用开发中,经常需要处理大量的表格数据,而Excel作为一种常用的数据存储格式,其读取与处理功能变得尤为重要。在ASP.NET中实现...

    asp.net使用npoi读取excel模板并导出下载详解

    在***中使用NPOI读取Excel模板并导出下载的详细过程涉及到多个知识点,包括对NPOI库的理解、Excel文件的读写操作、以及*** Web应用程序中的文件处理。下面将详细介绍这些内容。 ### 1. NPOI库简介 NPOI是一个开源的...

    读取EXCEL到ASP.NET

    在ASP.NET开发中,有时我们需要从Excel文件中读取数据并将其展示在网页上,例如在datagrid控件中。这个过程涉及到对Excel文件的操作和ASP.NET网页的交互。以下是一些关键知识点: 1. **Excel文件操作库**: ASP...

    ASP.NET导入导出Excel(完整版)

    ASP.NET是一种基于.NET框架的服务器端编程模型,用于构建动态Web应用程序。在许多业务场景中,数据交换和...通过理解这些知识点,开发者可以有效地在ASP.NET应用程序中实现与Excel文件的交互,提高工作效率和用户体验。

    asp.net c# 将excel导入网页

    在ASP.NET平台上,使用C#语言将Excel数据导入到网页是一项常见的需求,这通常涉及到数据的读取、处理以及在Web界面展示。本教程将详细讲解如何实现这一过程。 首先,你需要了解C#中用于读取Excel文件的库。.NET框架...

    ASP.NET实现EXCEL数据导入进度条ajax

    在ASP.NET开发中,有时我们需要处理大量的数据,例如从Excel文件中导入数据到数据库。当数据量较大时,用户可能需要等待较长时间,此时提供一个进度条和百分比统计能够显著提升用户体验。本文将深入探讨如何使用ASP...

    asp.net 打印Excel表格

    在ASP.NET中,打印Excel表格是一项常见的需求,特别是在数据展示和报表生成的场景下。Gridview和DataList是两种常用的数据绑定控件,用于显示来自数据库或其他数据源的数据。本篇将详细介绍如何在ASP.NET中利用这两...

    C# asp.net 操作Excel

    在实际部署的Web应用中,通常会关闭此选项,以避免用户看到Excel界面。 #### 2.3 错误处理 代码中包含了对未安装Office的异常处理,通过`MessageBox.Show("ûаװOffice");`提示用户缺少必要的Office组件。 ### 3...

    asp.net页面实现Excel数据导入SqlServer

    在ASP.NET开发中,有时我们需要将Excel数据导入到SQL Server数据库中,这在处理大量数据时非常有用。本文将详细讲解如何使用ASP.NET、Excel组件和SQLDMO库来实现这个功能,同时也会提及第三方控件uploadify在文件...

    asp.net 读取并显示excel数据的实现代码

    综上所述,***读取并显示Excel数据的核心过程包括:用户通过Web界面上传Excel文件;服务器端代码读取和解析文件;使用OLEDB技术连接数据库并读取数据;最后将数据绑定到GridView控件展示给用户。这个过程需要掌握***...

    asp.net,数据库导入excel数据,C#语言

    本文将详细讲解如何通过C#实现这一功能,并在ASP.NET环境中搭建一个用户界面,允许用户上传Excel文件并将其内容插入到数据库。 首先,我们需要处理Excel文件。在C#中,我们可以使用`Microsoft.Office.Interop.Excel...

    Asp.net MVC 实现在线预览word、excel、ppt、pdf文件

    在Asp.net MVC框架中,实现在线预览各种办公文档,如Word、Excel、PowerPoint和PDF文件,是一项常见的需求。这通常涉及到技术栈的整合,包括后端处理和前端展示。以下是一些关键知识点: 1. **Asp.net MVC框架**:...

    ASP.NET Excel导入数据库

    本文将详细讲解如何使用ASP.NET技术来处理Excel文件并将其内容存储到SQL Server数据库中。 首先,我们需要了解ASP.NET的基本概念。ASP.NET是微软开发的一种Web应用程序框架,用于构建动态网站、Web应用和服务。它...

    ASP.NET(c#) EXCEL操作类

    ASP.NET(C#)Excel操作类是一个用于在.NET环境中处理Microsoft Excel文件的工具类库。在ASP.NET(C#)项目中,这类库通常用于读取、写入、修改或创建Excel工作簿,以实现数据导入导出等功能。以下是这个主题的一些...

    通用ASP.NET Core NPOI导出复杂Word、Excel和Excel数据导入实战项目

    3. **Excel数据导出**:在ASP.NET Core应用中,你可以将数据库中的数据导出为Excel文件供用户下载。这通常涉及数据查询、模型映射以及使用NPOI的`ISheet`和`IRow`接口创建工作表和行,设置单元格值。例如,可以创建...

    asp.net 导入excel

    在ASP.NET中,处理Excel文件是常见的需求之一,特别是当你需要从用户上传的Excel文件中批量导入数据到数据库时。这个场景在企业级应用中非常普遍,例如员工信息管理、订单处理、库存控制等。本文将详细介绍如何在ASP...

    asp.net把execl文件导入数据库

    在ASP.NET开发中,将Excel文件导入数据库是一项常见的任务,特别是在数据处理和分析场景下。以下是对这个主题的详细说明: 1. **Excel文件读取**:首先,我们需要使用一个库来读取Excel文件。在.NET框架中,可以...

    asp.net 导入Excel文件

    在ASP.NET Web Form中,可以使用`&lt;asp:FileUpload&gt;`控件来创建一个文件上传界面,而在ASP.NET MVC中,可以在视图中创建HTML `&lt;input type="file"&gt;`标签,并在控制器中获取上传的文件。 接收到文件后,我们可以使用...

    ASP.NET源码——Excel导入SQLserver源码.zip

    7. **界面展示**:在ASP.NET中,这可能是一个简单的网页,用户上传Excel文件后,后台处理导入过程,并显示导入结果。 这个源码示例对于学习如何在ASP.NET中处理Excel数据和数据库操作非常有用。通过研究这段代码,...

Global site tag (gtag.js) - Google Analytics