ASP.NET MVC   导出CSV文件、直接贴代码

/// <summary>

/// ASP.NET MVC导出CSV文件Demo1

/// </summary>

/// <returns></returns>

public ActionResult ExportDemo1()

{

System.IO.MemoryStream output = new System.IO.MemoryStream();

System.IO.StreamWriter writer = new System.IO.StreamWriter(output, System.Text.Encoding.UTF8);

writer.Write("姓名,性别,年龄");//输出标题,逗号分割(注意最后一列不加逗号)

writer.WriteLine();

//输出内容

for (int i = 0; i < 10; i++)

{

writer.Write("用户" + i + ",\"");//第一列

writer.Write("男\",\"");//中间列

writer.Write("20\",");//最后一列

writer.WriteLine();

}

writer.Flush();

output.Position = 0;

return File(output, "text/comma-separated-values", "demo1.csv");

}

/// <summary>

/// ASP.NET MVC导出CSV文件Demo2

/// </summary>

/// <returns></returns>

public ActionResult ExportDemo2()

{

//定义模版(标题、内容字段、格式化参数)

string[,] template = new string[,] {

{ "姓名,", "Name" ,"{0}"}

, { "性别,", "Sex","{0}" }

, { "年龄", "Age" ,"{0}"}

};

System.IO.MemoryStream output = new System.IO.MemoryStream();

System.IO.StreamWriter writer = new System.IO.StreamWriter(output, System.Text.Encoding.UTF8);

//输出标题

int lenght = template.GetLength(0);

for (int i = 0; i < lenght; i++)

writer.Write(template[i, 0]);

writer.WriteLine();

//输出内容

List<User> lstUser = GetUsers();

if (lstUser != null)

{

foreach (User user in lstUser)

{

for (int i = 0; i < lenght; i++)

{

writer.Write(string.Format(template[i, 2]

, user.GetType().GetProperty(template[i, 1]).GetValue(user, null)));

if (i == 0)

writer.Write(",\"");

else if (i == lenght - 1)

writer.WriteLine();

else if (i == lenght - 2)

writer.Write("\",");

else

writer.Write("\",\"");

}

}

}

writer.Flush();

output.Position = 0;

return File(output, "text/comma-separated-values", "demo2.csv");

}

http://blog.csdn.net/moyanruo/article/details/18699081

http://blog.csdn.net/binyao02123202/article/details/6865033

ashx 页面:

StringWriter writer = new StringWriter();             //输出内容

for (int i = 0; i < 10; i++)

{

writer.Write("用户" + i + ",\"");//第一列

writer.Write("男\",\"");//中间列

writer.Write("20\",");//最后一列

writer.WriteLine();

}

writer.Close();

HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=test.csv");

HttpContext.Current.Response.ContentType = "application/ms-excel";

HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");

HttpContext.Current.Response.Write(writer);

HttpContext.Current.Response.End();

JS 导出方法

$("#SearchTitle").click(function () {
        var url= UrlBase + 'Admin/Activity/Export';
        window.open(url);

}

ASP.NET MVC 导出CSV文件的更多相关文章

  1. asp mvc 导出txt 文件泛型方法

    asp mvc 导出txt 文件泛型方法分享: public static void ExportFile<T>(T obj) { StringBuilder str = new Stri ...

  2. ASP.NET MVC导出excel

    ASP.NET MVC导出excel 要在ASP.NET MVC站点上做excel导出功能,但是要导出的excel文件比较大,有几十M,所以导出比较费时,为了不影响对界面的其它操作,我就采用异步的方式 ...

  3. 导出csv文件示例

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

  4. mysql SQLyog导入导出csv文件

    1.选择数据库表 --> 右击属性 --> 备份/导出 --> 导出表数据作为 --> 选择cvs --> 选择下面的“更改” --> 字段 --> 变量长度 ...

  5. 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致的解决办法

    -----转载:http://blog.csdn.net/sgear/article/details/7663502 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格 ...

  6. PHP 读取/导出 CSV文件

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

  7. Web 端 js 导出csv文件(使用a标签)

    前言 导出文件,使用最多的方式还是服务器端来处理.比如jsp 中使用response 的方式. 但是,有时候可能就想使用web 前端是否也可以把页面上的内容导出来呢? 比如说,导出页面的一个表格. 这 ...

  8. [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传

    原文 [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传 Fine Uploader(http://fineuploader.com/)是一个实现 ajax 上传文件 ...

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

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

随机推荐

  1. POJ 2479 两段连续最大和

    题目大意: 在一组数中,找到连续的两段 , 是这两段相加和达到最大 这里利用dp[2][N]的数组保存所有的状态 dp[0][i]表示取到第i个数时只取了一段的最大和,第i个数是一定要被取到的 dp[ ...

  2. HDU 4941

    Magical Forest Problem Description There is a forest can be seen as N * M grid. In this forest, ther ...

  3. 网络编程基础:网络基础之网络协议、socket模块

    操作系统(简称OS)基础: 应用软件不能直接操作硬件,能直接操作硬件的只有操作系统:所以,应用软件可以通过操作系统来间接操作硬件 网络基础之网络协议: 网络通讯原理: 连接两台计算机之间的Intern ...

  4. Linux下汇编语言学习笔记17 ---

    这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...

  5. Thinkphp5.0 的使用模型Model查询

    Thinkphp5.0 的使用模型Model查询 一.查询多条记录 获取多个数据可以使用:select()方法和all()方法. 示例一:使用all()方法. //(1)筛选条件使用闭包函数 $res ...

  6. UVA 11400_ Lighting System Design

    题意: 给定一系列灯泡的额定功率,电源价钱,一个灯泡的价格以及系统所需该种灯泡的数量.已知流过灯泡的电流相等,所以为省钱可以将电压小的灯泡换成电压大的灯泡,但是不能换成电压更小的灯泡,问最少要花多少钱 ...

  7. [bzoj3196][Tyvj1730]二逼平衡树_树套树_位置线段树套非旋转Treap/树状数组套主席树/权值线段树套位置线段树

    二逼平衡树 bzoj-3196 Tyvj-1730 题目大意:请写出一个维护序列的数据结构支持:查询给定权值排名:查询区间k小值:单点修改:查询区间内定值前驱:查询区间内定值后继. 注释:$1\le ...

  8. Linux系统备份还原工具1(DD)(应用实例)

    DD使用教程:http://www.cnblogs.com/EasonJim/p/7442223.html 以下实例没经过大量测试,可能在一些机器上不会有效. 一般围绕以下几点进行设置: 1.dd完后 ...

  9. JDBC的数据类型

    以下内容引用自http://wiki.jikexueyuan.com/project/jdbc/data-types.html: JDBC驱动程序在将Java数据类型发送到数据库之前,会将其转换为相应 ...

  10. 【SQL Server 学习系列】-- 收缩数据库文件大小

    USE WebExam; GO ALTER DATABASE WebExam SET RECOVERY SIMPLE; GO -- 收缩文件到 1 MB. ); GO ALTER DATABASE W ...