ASP.NET MVC 导出CSV文件
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文件的更多相关文章
- asp mvc 导出txt 文件泛型方法
asp mvc 导出txt 文件泛型方法分享: public static void ExportFile<T>(T obj) { StringBuilder str = new Stri ...
- ASP.NET MVC导出excel
ASP.NET MVC导出excel 要在ASP.NET MVC站点上做excel导出功能,但是要导出的excel文件比较大,有几十M,所以导出比较费时,为了不影响对界面的其它操作,我就采用异步的方式 ...
- 导出csv文件示例
导出csv文件示例 csv文件默认以英文逗号,做为列分隔符换行符\n作为行分隔符,写入到一个.csv文件即可.含有英文逗号,和换行符会发生数据输出会出现混乱,下面列出一些处理方法.特殊字符处理1.含有 ...
- mysql SQLyog导入导出csv文件
1.选择数据库表 --> 右击属性 --> 备份/导出 --> 导出表数据作为 --> 选择cvs --> 选择下面的“更改” --> 字段 --> 变量长度 ...
- 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致的解决办法
-----转载:http://blog.csdn.net/sgear/article/details/7663502 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格 ...
- PHP 读取/导出 CSV文件
工作中经常会有遇到导入/导出的需求,下面是常用的方法.读取CSV文件,可以分页读取,设置读取行数,起始行数即可.导出CSV文件,用两种方法进行实现. /** * 读取CSV文件 * @param st ...
- Web 端 js 导出csv文件(使用a标签)
前言 导出文件,使用最多的方式还是服务器端来处理.比如jsp 中使用response 的方式. 但是,有时候可能就想使用web 前端是否也可以把页面上的内容导出来呢? 比如说,导出页面的一个表格. 这 ...
- [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传
原文 [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传 Fine Uploader(http://fineuploader.com/)是一个实现 ajax 上传文件 ...
- PHP导出CSV文件出现乱码的解决方法
在做项目时碰到使用外语的情况下,我们就会使用UTF-8编码.但是,在用PHP导出CSV文件时,如果写入的数据是使用UTF-8编码的日语.韩语之类的外文,就会出现乱码. 要解决PHP生成CSV文件的乱码 ...
随机推荐
- 【bzoj2527】[Poi2011]Meteors(树状数组(单点查询,区间修改)+整体二分)
[bzoj2527][Poi2011]Meteors Description Byteotian Interstellar Union (BIU) has recently discovered a ...
- bzoj3262 陌上花开 cdq+树状数组
[bzoj3262]陌上花开 Description 有n朵花,每朵花有三个属性:花形(s).颜色(c).气味(m),又三个整数表示.现要对每朵花评级,一朵花的级别是它拥有的美丽能超过的花的数量.定义 ...
- [bzoj1717][Usaco2006 Dec]Milk Patterns 产奶的模式_后缀数组_二分答案
Milk Patterns 产奶的模式 bzoj-1717 Usaco-2006 Dec 题目大意:给定一个字符串,求最长的至少出现了$k$次的子串长度. 注释:$1\le n\le 2\cdot 1 ...
- list去重精简代码版
List<String> list = new ArrayList<>(); list.add("111"); list.add("111&quo ...
- E-SATA接口
1.VGA接口 VGA接口就是显卡上输出模拟信号的接口,也叫D-Sub接口,其实就是显示转移的接口,比如连接投影仪.连接电视等等.从外观上讲,VGA接口是一种D型接口,上面共有15针空,分成三排,每排 ...
- myloader恢复mysql数据库演示样例
mydumper是针对mysql数据库备份的一个轻量级第三方的开源工具.备份方式为逻辑备份.它支持多线程.备份速度远高于原生态的mysqldump以及众多优异特性.与其相配套的恢复工具则是mylo ...
- JAVA 流程控制之选择语句
在程序设计时,有三种基本技术可以改变程序的流程控制: 调用方法: 选择: 循环. 在这里,我们主要来讲讲选择语句. JAVA中的选择语句与C语言中的基本相同,包括: if 语句: if/else 语句 ...
- AutoCAD如何方便截图放到Word文档,改成白底黑字
将模型视图切换到布局2即可 比如下图所示的效果 先回到模型视图把所有线条颜色都改成白色,然后添加适当的标注(比如要受力分析,则在CAD中绘制箭头也很方便的),文字说明.然后切换到布局2就OK ...
- javaWeb_使用标签库简化jsp
jsp标签库.也叫自己定义标签. 应用范围 jsp标签.主要应用于前台页面.在jsp中.假设jsp中存在<% %> 等 java代码.那么对前台开发者来说.就须要了解 java代码. 怎样 ...
- rsh 无秘钥登陆配置
/etc/hosts.equiv里的主机不须要提供password就能够訪问本机./etc/host.equiv 要和~/.rhosts文件连用. [root@web-htl2-01 ~]# cat ...