苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

分布式系统框架(V1.3) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper万能框架(V2.3) HttpHelper官方出品,无敌框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V1.9) 最牛的爬虫类,没有爬不到只有想不到 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 18355|回复: 6

[Excel] CsvHelper---C#关于CSV文件的导入和导出以及转化

[复制链接]
  • TA的每日心情
    开心
    昨天 10:45
  • 签到天数: 641 天

    [LV.9]以坛为家II

    发表于 2012-12-6 10:27:32 | 显示全部楼层 |阅读模式
             CsvHelper---C#关于CSV文件的导入和导出以及转化
    导读部分
    -------------------------------------------------------------------------------------------------------------
    C#基类库苏飞版--系列教程导航http://www.sufeinet.com/thread-655-1-1.html

    下载之前你首先要注册成为会员哦,注册之后就可以直接下载啦
    更新时间:2012-12-06
    最新的CsvHelper类下载:
    CsvHelper.rar (1.02 KB, 下载次数: 542)
  • TA的每日心情
    开心
    2018-8-18 18:38
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2013-8-30 16:54:29 | 显示全部楼层
    有没有例子啊,使用不来

    补充内容 (2013-9-17 06:53):
    跟了一遍代码后,终于会了,原来传进去的参数DataTable 必须是把表头(column)先按文件格式设置好

    该用户从未签到

    发表于 2014-4-2 23:15:27 | 显示全部楼层

    该用户从未签到

    发表于 2014-10-15 13:25:55 | 显示全部楼层

    该用户从未签到

    发表于 2014-12-1 17:26:53 | 显示全部楼层
    [C#] 纯文本查看 复制代码
            /// <summary>
            /// 导出报表为Csv
            /// </summary>
            /// <param name="dt">DataTable</param>
            /// <param name="strFilePath">物理路径</param>
            /// <param name="tableheader">表头</param>
            /// <param name="columname">字段标题,逗号分隔</param>
            public static bool dt2csv(DataTable dt, string strFilePath, string tableheader, string columname,string fileds ="")
            {
                try
                {
                    string strBufferLine = "";
                    StreamWriter strmWriterObj = new StreamWriter(strFilePath, false, System.Text.Encoding.UTF8);
                    strmWriterObj.WriteLine(tableheader);
                    strmWriterObj.WriteLine(columname);
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        strBufferLine = "";
                        if (fileds != "")
                        {
                            string[] filedArr = fileds.Split(',');
                            for (int j = 0; j < filedArr.Length; j++)
                            {
                                string filed = filedArr[j];
                                if (j > 0)
                                    strBufferLine += ",";
                                strBufferLine += dt.Rows[i][filed].ToString().Replace(',',',').Replace('"','“');
                            }
                        }
                        else
                        {
                            for (int j = 0; j < dt.Columns.Count; j++)
                            {
                                if (j > 0)
                                    strBufferLine += ",";
                                strBufferLine += dt.Rows[i][j].ToString().Replace(',', ',').Replace('"', '“');
                            }
                        }
                        strmWriterObj.WriteLine(strBufferLine);
                    }
                    strmWriterObj.Close();
                    return true;
                }
                catch
                {
                    return false;
                }
            }


    改造好的导出!楼主这个导出时必须是和表字段一样,这个可以按表字段来导出

    该用户从未签到

    发表于 2015-1-17 12:35:54 | 显示全部楼层
  • TA的每日心情
    开心
    2017-6-28 20:55
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2016-10-25 10:24:17 | 显示全部楼层
    您需要登录后才可以回帖 登录 | 马上注册

    本版积分规则

    QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备17001017号-1 )

    GMT+8, 2018-12-11 01:28

    © 2017-2018

    快速回复 返回顶部 返回列表