//导出功能
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 = ; 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 = ; i < list.Count; i++)
{
ContactInfo conInfo = new ContactInfo { CenterName = list[i].CenterName };
IList<ContactInfo> list1 = ContactBiz.Query(conInfo);
if (list1.Count == )
{
ContactBiz.Insert(list[i]);
}
else
{
textList.Add(list[i].CenterName);//add(list[i].CenterName);
}
}
string text = "";
if (textList.Count > )
{
for (int i = ; i < textList.Count; i++)
{
text += textList[i];
if (textList.Count > && i < textList.Count - )
{
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控件获取文件的全路径
}

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

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

    Laravel Excel 是一款基于 PHPExcel 开发的Laravel框架专用的 Excel/CSV 文件导入导出功能的扩展包,用起来的非常方便. 它的 Github 地址是:https:// ...

  2. oracle导入导出功能

    1.普通版:oracle导入导出功能:导出exp 用户名/密码@SID file=f:\xx.dmp owner=用户名 导入imp 用户名/密码@SID full=y file=f:\xx.dmp ...

  3. office在繁体系统下 导入导出 功能灰显的解决方法

    当在win7系统使用繁体中文版的office时,或系统是繁体版时,可能会导致office的导入导出功能无法使用 解决方法: 控制面板--区域和语言--格式--中文简体

  4. vue+element-ui的简洁导入导出功能

    1.前段后台管理系统中数据展示一般都是用表格,表格会涉及到导入和导出;原生js导出excel2.导入是利用element-ui的Upload 上传组件; <el-upload class=&qu ...

  5. poi实现excel的导入导出功能

    Java使用poi实现excel的导入导出功能: 工具类ExcelUtil,用于解析和初始化excel的数据:代码如下 package com.raycloud.kmmp.item.service.u ...

  6. vue + element-ui实现简洁的导入导出功能

    1.安装ElementUI模块 cnpm install element-ui -S 2.在main.js中引入 import ElementUI from 'element-ui' import ' ...

  7. SpringCloud微服务实战——搭建企业级开发框架(三十):整合EasyExcel实现数据表格导入导出功能

      批量上传数据导入.数据统计分析导出,已经基本是系统必不可缺的一项功能,这里从性能和易用性方面考虑,集成EasyExcel.EasyExcel是一个基于Java的简单.省内存的读写Excel的开源项 ...

  8. 关于玩QQ消息导入导出功能的感想!

    今天玩了一下QQ的导入导出聊天记录的功能,感觉自己有些白痴,因为作为一个软件开发人员对自己平时使用的软件的功能掌握的不够,别说其他的任何东西了就连功能性的操作有些也不知道更别说熟练或精通了,这不是一个 ...

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

    今天接到项目中的一个功能,要实现excel的导入,导出功能.这个看起来思路比较清楚,但是做起了就遇到了不少问题. 不过核心的问题,大家也不会遇到了.每个项目前台页面,以及数据填充方式都不一样,不过大多 ...

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

    1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和导出. 该 ...

随机推荐

  1. Android存储数据方式

    可以查看Android开发文档中的:/docs/guide/topics/data/data-storage.html Android provides several options for you ...

  2. java.util 类 TreeSet<E>

    java.lang.Object≥ java.util.AbstractCollection<E> ≥ java.util.AbstractSet<E> ≥ java.util ...

  3. Hdu4349 Xiao Ming's Hope

    Xiao Ming's Hope Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  4. mvc+ef+oracle环境中报错:ORA-00001: 违反唯一约束条件

    分析原因: 在oracle中,主健不能自动生成,不过可以通过“序列”来实现,如果是这样的话,问题很可能就出在“序列”上了: ORACLE表主键ID突然从已经存在的ID值开始自动生成,导致违反主键唯一性 ...

  5. JavaScript prototype 属性

    prototype 属性使开发人员有能力向对象添加属性和方法. 语法 object.prototype.name=value 实例 在本例中,我们将展示如何使用 prototype 属性来向对象添加属 ...

  6. Jquery异步提交$.ajax的使用

    function test(){ var myEntity=new Object(); myEntity.pro1="xxx"; myEntity.pro2=10; $.ajax( ...

  7. linux 新增挂载新硬盘

    1. 添加磁盘,查看磁盘状况 [root@db1 /]# fdisk -l Disk /dev/sda: 10.7 GB, 10737418240 bytes 255 heads, 63 sector ...

  8. shell 下的$符合

    $n        $1 the first parameter,$2 the second...$#        The number of command-line parameters.$0  ...

  9. 用户列表-投资记录sql

    --普通标.定向标.新手标.老互融计划-投资记录表select bid.borrow_id, (select yyb.borrow_valid_time from YYD_Borrow_BorrowI ...

  10. libpcap文件格式分析

    第一部分:PCAP包文件格式 一 基本格式: 文件头 数据包头数据报数据包头数据报...... 二.文件头: 文件头结构体  sturct pcap_file_header  {       DWOR ...