C#导入、导出功能

   //导出功能
        protected void btnExport(object sender, EventArgs e)
        {
            //用来打开下载窗口
            string fileName = "中心联系方式";
            Response.ContentType = "application/vnd.ms-excel";
            // Response.AddHeader("Content-Type", "application/vnd.ms-excel");

            Response.HeaderEncoding = System.Text.Encoding.GetEncoding("utf-8");

            Response.CacheControl = "no-cache";
            // Response.AddHeader("Cache-Control","no-cache");            

            Response.AddHeader("Content-Disposition", string.Format("attachment;filename={0}.xls", System.Web.HttpUtility.UrlEncode(fileName)));
            Response.Clear();
            //1将数据库中的数据读取到list中,
            //2设置workbook的值
            //3写入到memorystream中
            //4以二进制的形式写入到response流中
            IList<ContactInfo> list = ContactBiz.Query(new ContactInfo());
            ExcelToDB excelToDB = new ExcelToDB();
            try
            {
                MemoryStream ms = excelToDB.ExportToExcel(fileName, list);
                Response.BinaryWrite(ms.ToArray()); //ms.GetBuffer();
                Response.End();
            }
            catch (Exception ex)
            {
                Logger.Write("中心联系方式导出失败,原因:" + ex.Message);
                throw ex;
            }

        }

        //导入功能
        protected void Button1_Click(object sender, EventArgs e)
        {
            bool fileOK = false;
            string path = Server.MapPath("~/Temp/");
            if (FileUpload1.HasFile)
            {
                string fileExtension = System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
                string[] allowedExtensions = { ".xls" };
                for (int i = 0; i < allowedExtensions.Length; i++)
                {
                    if (fileExtension == allowedExtensions[i])
                    {
                        fileOK = true;
                    }
                }
            }
            if (fileOK)
            {
                try
                {
                    path = path + FileUpload1.FileName;
                    FileUpload1.SaveAs(path);
                    //提示文件上传成功
                    //LabMessage1.Text = "文件上传成功.";
                    //LabMessage2.Text = "<b>原文件路径:</b>" + FileUpload1.PostedFile.FileName + "<br />" +
                    //          "<b>文件大小:</b>" + FileUpload1.PostedFile.ContentLength + "字节<br />" +
                    //          "<b>文件类型:</b>" + FileUpload1.PostedFile.ContentType + "<br />";
                    ExcelToDB excelToDB = new ExcelToDB();
                    IList<ContactInfo> list = excelToDB.ExcelToList(path);
                    IList<string> textList = new List<string>();
                    for (int i = 0; i < list.Count; i++)
                    {
                        ContactInfo conInfo = new ContactInfo { CenterName = list[i].CenterName };
                        IList<ContactInfo> list1 = ContactBiz.Query(conInfo);
                        if (list1.Count == 0)
                        {
                            ContactBiz.Insert(list[i]);
                        }
                        else
                        {
                            textList.Add(list[i].CenterName);//add(list[i].CenterName);
                        }
                    }
                    string text = "";
                    if (textList.Count > 0)
                    {
                        for (int i = 0; i < textList.Count; i++)
                        {
                            text += textList[i];
                            if (textList.Count > 1 && i < textList.Count - 1)
                            {
                                text += ",";
                            }
                        }
                        Response.Write("<Script language=‘JavaScript‘>alert(‘导入失败的中心名称:" + text + "‘);</Script>");
                    }
                    else
                    {
                        Response.Write("<Script language=‘JavaScript‘>alert(‘数据全部导入成功‘);</Script>");
                    }
                }
                catch (Exception ex)
                {
                    Logger.Write("文件上传失败,原因:" + ex.Message);
                    Response.Write("<Script language=‘JavaScript‘>alert(‘文件上传失败‘);</Script>");
                }
            }
            else
            {
                Response.Write("<Script language=‘JavaScript‘>alert(‘只能够上传Excel文件‘);</Script>");
            }
            //   string filePath = FileUpload1.PostedFile.FileName;//从fileupload控件获取文件的全路径
        }
时间: 2024-11-05 19:00:23

C#导入、导出功能的相关文章

Laravel Excel 实现 Excel-CSV 文件导入导出功能

Laravel Excel 是一款基于 PHPExcel 开发的Laravel框架专用的 Excel/CSV 文件导入导出功能的扩展包,用起来的非常方便. 它的 Github 地址是:https://github.com/Maatwebsite/Laravel-Excel 安装 我们就按照GIthub上的readme文件进行安装吧. composer require "maatwebsite/excel:~2.1.0" 在 config/app.php 中注册服务提供者到 provid

Windows Azure 功能再扩充-SQL Database开始支持导入导出功能

本文将介绍 SQL Database 新增的导入导出功能,帮助您可以透过数据层应用程序把数据库导入到 SQL Database,或是将 SQL Database 导出至 Cloud Storage. [背景说明] 在 Facebook 上看到 Eric Shangkuan 分享 ScottGu 发表的文章,文中提到 Windows Azure Platform Management Portal 的再次扩充许多新功能,其中包含下列功能: Service Bus Management and Mo

在 Laravel 5 中使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能(转)

1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel ,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和 导出 . 该项目的GitHub地址是: https://github.com/Maatwebsite/Laravel-Excel . 本文我们将在Laravel中使用Laravel Excel简单实现Excel文件的导入和导出. 2.安装&配置 使用Composer安装依赖 首先在Laravel项目根目录

基于ajaxFileUpload和Java IO的可视化项目模板导入导出功能

目前部门在做的(大)数据可视化项目中增加了一个模板功能,经过一个星期的摸索,总算是打包提交测试通过了.这里记下一些技术要点,温故知新. 1,模板文件的格式设计 模板导出和导入的文件为一个“模板名称.zip”的压缩包.包内含有一个temp.json文件和若干资源文件(图片,视频,MP3音乐等). temp.json文件格式: { “content” : ”…”, //模板内容 “thumbnail” : “…”, //模板缩略图 “name” : “…”, //模板名称 “resource” :

实现excel导入导出功能,excel导入数据到页面中,页面数据导出生成excel文件

今天接到项目中的一个功能,要实现excel的导入,导出功能.这个看起来思路比较清楚,但是做起了就遇到了不少问题. 不过核心的问题,大家也不会遇到了.每个项目前台页面,以及数据填充方式都不一样,不过大多都是以json数据填充的.在导入excel填充json数据到页面时,真的让我差点吐血了.在做这个导入导出的时候,那一个礼拜都是黑暗的. 好了,废话不多说了,我今天就给大家展示这个两个功能的核心点,excel生成json数据和json数据生成excel文件. 一:从上传文件到服务器,后台java解析,

在 Laravel 5 中使用 Laravel Excel 实现 Excel/CSV 文件导入导出功能

1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel ,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和 导出 . 该项目的GitHub地址是: https://github.com/Maatwebsite/Laravel-Excel . 本文我们将在Laravel中使用Laravel Excel简单实现Excel文件的导入和导出. 2.安装&配置 使用Composer安装依赖 首先在Laravel项目根目录

laravel框架excel 的导入导出功能

1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和导出. 该项目的GitHub地址是:https://github.com/Maatwebsite/Laravel-Excel. 本文我们将在Laravel中使用Laravel Excel简单实现Excel文件的导入和导出. 2.安装&配置 使用Composer安装依赖 首先在Laravel项目根目录下使用Co

oracle 导入导出功能

关于expdp和impdp 使用EXPDP和IMPDP时应该注意的事项: EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用. - EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用. IMP只适用于EXP导出的文件,不适用于EXPDP导出文件: IMPDP只适用于EXPDP导出的文件,而不适用于EXP导出文件. *初次导入导出库时必须先创建 DIRECTORY (指定转储文件和日志文件所在的目录),否则会报错:LRM-00112

laravel实现excel表的导入导出功能

这是个我去公司之后曾经折磨我很久很久的功能查阅了很多资料但是功夫不负有心人在本人的不懈努力下还是实现了这个功 namespace App\Http\Controllers; use App\Http\Controllers\Admin\ContentTypes\File; use App\Models\Win1; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facad

按照TYPE的文件导入导出功能

/** * 导入文件Action;*/private File excelFile;// 保存原始文件名private String excelFileFileName;// 保存原始文件名private String importResult; // 将Excel文件解析完毕后信息存放到这个User对象中private ExcelWorkSheet<TabUser> excelUserSheet; /*** 文件导入* * @return*/@Action(value = "imp