最近把以前项目里用的导出文件的功能提取成了dll,通过读取Attribute来得到要导出的表头(没有支持多语言),使用时只要组织好要导出的数据,调用方法就好了,希望对大家有用。

使用时只需引用下载包里bin里面的ExportData.dll文件即可,demo以下:

    public class HomeController : Controller
{
public ActionResult Index()
{
List<Model> data = new List<Model>(); data.Add(new Model { ID = 1, Name = "名字1" });
data.Add(new Model { ID = 2, Name = "小明" });
data.Add(new Model { ID = 3, Name = "小红" }); ExportFile.ExportToCSV<Model>(data, "test"); return View();
}
} public class Model
{
[ExportHeader("序号", 0)]
public int ID { get; set; }
[ExportHeader("名称", 1)]
public string Name { get; set; }
}

为了简单我把Model类与controller放在一起了,大家使用时请把它单独提出去。

效果:

aaarticlea/png;base64,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" alt="" />

代码下载:http://files.cnblogs.com/files/yahb/ExportData.rar

BS导出csv文件的通用方法(.net)的更多相关文章

  1. 转:导出csv文件数字会自动变科学计数法的解决方法

    导出csv文件数字会自动变科学计数法的解决方法   其实这个问题跟用什么语言导出csv文件没有关系.Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科 ...

  2. mysql导出csv文件excel打开后数字用科学计数法显示且低位变0的解决方法

    Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科学技术费表示,还会只保留高15位,其他位都变0. Excel打开csv文件时,只要字段值都是数字,它 ...

  3. PHP导出CSV文件出现乱码的解决方法

    在做项目时碰到使用外语的情况下,我们就会使用UTF-8编码.但是,在用PHP导出CSV文件时,如果写入的数据是使用UTF-8编码的日语.韩语之类的外文,就会出现乱码. 要解决PHP生成CSV文件的乱码 ...

  4. 导出csv文件数字会自动变科学计数法的解决方法

    其实这个问题跟用什么语言导出csv文件没有关系.Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科学技术费表示,还会只保留高15位,其他位都变0.解决 ...

  5. PHP之导出CSV文件

    序言 Q1:什么是csv文件? A1:csv即 comma-separated values ,逗号分隔值.是一种通用的相对简单地文件格式,目前被较为广泛的使用.其最广泛的应用就是用来转移表数据. “ ...

  6. C#将DataTable数据导出CSV文件

    C#将DataTable数据导出CSV文件通用方法! //导出按钮调用导出方法    protected void btnCSV_Click(object sender, EventArgs e)   ...

  7. 导出csv文件示例

    导出csv文件示例 csv文件默认以英文逗号,做为列分隔符换行符\n作为行分隔符,写入到一个.csv文件即可.含有英文逗号,和换行符会发生数据输出会出现混乱,下面列出一些处理方法.特殊字符处理1.含有 ...

  8. php使用ajax导出CSV或者EXCEl(thinkphp)方法

    首先我强烈推荐看到这篇文章的你将导出文件设置为csv格式的文件 实际测试导出csv文件的速度是excel文件的10几倍左右 首先我先介绍csv文件的导出的方法: 如果你单纯是在数据导出界面上通过用户点 ...

  9. PHP 读取/导出 CSV文件

    工作中经常会有遇到导入/导出的需求,下面是常用的方法.读取CSV文件,可以分页读取,设置读取行数,起始行数即可.导出CSV文件,用两种方法进行实现. /** * 读取CSV文件 * @param st ...

随机推荐

  1. SpringMVC源码解析- HandlerAdapter - ModelFactory(转)

    ModelFactory主要是两个职责: 1. 初始化model 2. 处理器执行后将modle中相应参数设置到SessionAttributes中 我们来看看具体的处理逻辑(直接充当分析目录): 1 ...

  2. 怎么将Emeditor设置成网页查看源代码的默认编译器

    1.打开emditor: 2.在菜单栏中找到工具---->自定义,打开自定义窗口: 3.快捷方式--->更多快捷方式 5.选中“在internet explorer中通过emeditor查 ...

  3. Chapter 1 Securing Your Server and Network(4):使用虚拟服务帐号

    原文:Chapter 1 Securing Your Server and Network(4):使用虚拟服务帐号 原文出处:http://blog.csdn.net/dba_huangzj/arti ...

  4. FastReport扩展类

    题记: 最近有在用FastReport进行开发报表工作,当然也有在看书,突然想到可以用书中所写来实现一个fastreport的帮助类. 对于引用第三方类库,我们都会去将这个库在调用前进行相应的封装,也 ...

  5. Linux 多学习过程

    1Linux流程概述 过程是,一旦运行过程中的程序,他和程序本质上的区别.程序是静态的,他奉命收集指令存储在磁盘上. 进程是动态的概念.他是执行者的程序,包括进程的动态创建.调度和消亡,是Linux的 ...

  6. [ngRepeat:dupes] Duplicates in a repeater are not allowed. Use &#39;track by&#39; expression to specify uniq

    angularjs 使用ng-repeat报错 <div ng-init="words = ['高校','高校','高校']" ng-repeat="word in ...

  7. 泛泰A860(高通公司8064 cpu 1080p) 拂4.4中国民营recovery TWRP2.7.1.2文本(通过刷第三版)

    专业第三方开发团队 VegaDevTeam  (本team 由 syhost suky zhaochengw(z大) xuefy(大星星) tenfar(R大师) loogeo crazyi(天下无雪 ...

  8. java内存分析总结

    1.自带的jconsole工具. (1)假设是从命令行启动,使 JDK 在 PATH 上,执行 jconsole 就可以. (2)假设从 GUI shell 启动,找到 JDK 安装路径,打开 bin ...

  9. Visual Studio Team Services使用教程--Readers tfs组checkin权限修改

    你也可以只开启部分代码的权限 把上面开启的整个应用的权限先去掉 只开启一个文件的权限

  10. php脚本生成google play url的下载链接,下载apk并自动反编译后获取android版本号

        需求:     get the offer tracking link    follow the redirect to get google play url    Go to http: ...