zoukankan      html  css  js  c++  java
  • 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" onclick="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 向 浏览器 发送文件

  • 相关阅读:
    [题解]Magic Line-计算几何(2019牛客多校第三场H题)
    [题解]Crazy Binary String-前缀和(2019牛客多校第三场B题)
    [数论]快速幂取模
    [模板]大整数乘法——累加型
    [动态规划] 最大子段和问题
    2073
    17-2-24-D
    17-1-31-C
    2032
    1992
  • 原文地址:https://www.cnblogs.com/AlvinLiang/p/9200554.html
Copyright © 2011-2022 走看看