CSVHelper在Asp.Net MVC中的使用

1,从数据库读取数据,然后导出CSV文件

        [HttpPost]
        public FileResult ExportCSV()
        {
           
            var apps =。。。。//linq以及EF从数据库查询数据

            MemoryStream ms = new MemoryStream();
            StreamWriter sw = new StreamWriter(ms);
            var csv = new CsvWriter(sw);
            foreach (var pp in apps)
            {
                csv.WriteField(0);      //set to '0'

                csv.WriteField("");     //set empty space

                csv.WriteField("haha");

                csv.NextRecord();
            }

            sw.Flush();

            ms.Position = 0;
            return File(ms, "text/comma-separated-values", "Export.csv");
        }    

 

2,页面上传CSV文件,服务器读取文件内容

@using (Html.BeginForm("ImportCSV", "ExportImport", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
    <div class="row  row-margin">
        <div class="col-lg-4">
            <div class="form-group">
                <input type="file" name="csvToUpload" id="csvToUpload" accept=".csv">
            </div>
        </div>
        <div class="col-lg-6"></div>
        <div class="col-lg-2 pull-right">
            <button type="submit" class="btn btn-default btn-space-right btn-space-left"><span class="glyphicon glyphicon-import"></span> Import</button>
            <button type="button" class="btn btn-default pull-right" οnclick="backHomePage();"><span class="glyphicon glyphicon-step-backward"></span> Quit</button>
        </div>
    </div>
}

 

        [HttpPost]
        public JsonResult ImportCSV(HttpPostedFileBase csvToUpload)
        {
                    using (var textReader = new StreamReader(csvToUpload.InputStream))
                    {
                        var csv = new CsvReader(textReader);

                        while (csv.Read())
                        {
                            var field = csv.GetField<string>(0);
                        }
                    }
                   
            .......
        }

 

 

参考:

CVSHELPER 使用指南

ASP.NET MVC 导出CSV文件

ASP.NET MVC:通过 FileResult 向 浏览器 发送文件

转载于:https://www.cnblogs.com/AlvinLiang/p/9200554.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值