CsvHelper

using System.Data;
using System.IO;

public static class CsvHelper
{
    /// <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)
    {
        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 = "";
                for (int j = 0; j < dt.Columns.Count; j++)
                {
                    if (j > 0)
                        strBufferLine += ",";
                    strBufferLine += dt.Rows[i][j].ToString();
                }
                strmWriterObj.WriteLine(strBufferLine);
            }
            strmWriterObj.Close();
            return true;
        }
        catch
        {
            return false;
        }
    }

/// <summary>
    /// 将Csv读入DataTable
    /// </summary>
    /// <param name="filePath">csv文件路径</param>
    /// <param name="n">表示第n行是字段title,第n+1行是记录开始</param>
    public static DataTable csv2dt(string filePath, int n, DataTable dt)
    {
        StreamReader reader = new StreamReader(filePath, System.Text.Encoding.UTF8, false);
        int i = 0, m = 0;
        reader.Peek();
        while (reader.Peek() > 0)
        {
            m = m + 1;
            string str = reader.ReadLine();
            if (m >= n + 1)
            {
                string[] split = str.Split(‘,‘);

System.Data.DataRow dr = dt.NewRow();
                for (i = 0; i < split.Length; i++)
                {
                    dr[i] = split[i];
                }
                dt.Rows.Add(dr);
            }
        }
        return dt;
    }
}

时间: 2024-10-07 02:13:35

CsvHelper的相关文章

CSVHelper 导出CSV 格式

public class CSVHelper { System.Windows.Forms.SaveFileDialog saveFileDialog1;//保存 private string header = string.Empty;//标题 /// <summary> /// 初始化打印设置 /// </summary> /// <param name="printID"></param> protected void InitEx

[C#]CSVHelper

关键代码: using System.Data; using System.IO; using System.Text; namespace YanZhiwei.DotNet2.Utilities.Common { /// <summary> /// CSV文件转换类 /// </summary> public static class CSVHelper { #region 导出到csv文件 /// <summary> /// 导出到csv文件 /// eg: ///

Nuget CsvHelper 的使用

CsvHelper:nuget地址 csv导出类||生成类 public class CSVHeader { public string head1 { get; set; } public string head2 { get; set; } public string head3 { get; set; } public string head4 { get; set; } public string head5 { get; set; } } csv map 类 public class

封装一个CSVHelper

1 public class CSVHelper 2 { 3 /// <summary> 4 /// CSV转换成DataTable(OleDb数据库访问方式) 5 /// </summary> 6 /// <param name="csvPath">csv文件路径</param> 7 /// <returns></returns> 8 public static DataTable CSVToDataTableB

工具集

好用的工具集 转:http://www.yimingzhi.com/2015/03/lao-yi-de-kai-fa-gong-ju-he-lei-ku-ji-2014-ban Visual Studio 2013 扩展 Visual Studio 2013 Update 4:是目前微软发布的最新版开发工具升级包,高效而且强大.下面的扩展都是该版本的Visual Studio下的,老版本可以根据名字自行查找安装. CodeMaid: 可快速整理代码文件,清理不必要的代码和杂乱的格式.并在开发时实

ASP.NET MVC 导出CSV 的 CsvFileResult 类

public class CsvFileResult<T> : FileResult where T : class { private IEnumerable<T> _data; public CsvFileResult(IEnumerable<T> data) : base("text/CSV") { _data = data; } protected override void WriteFile(HttpResponseBase respon

DotNet 资源大全中文版(Awesome最新版)

Awesome系列的.Net资源整理.awesome-dotnet是由quozd发起和维护.内容包括:编译器.压缩.应用框架.应用模板.加密.数据库.反编译.IDE.日志.风格指南等. API 框架 NancyFx:轻量.用于构建 HTTP 基础服务的非正式(low-ceremony)框架,基于.Net 及 Mono 平台. 官网 ASP.NET WebAPI:快捷创建 HTTP 服务的框架,可以广泛用于多种不同的客户端,包括浏览器和移动设备. 官网 ServiceStack:架构缜密.速度飞快

人生维艰,何不利用开源.NET函数库让工作更轻松

今天推荐的文章会谈到一些让你工作更轻松的开源.NET函数库. 即使业界有时候认为.NET开源社区不太健康,很多开发团队都更多依赖于微软提供的东西来开发.不过最近在.NET世界中还是诞生了一些优秀和有意思的开源函数库. thomasvm就在他的博文中推荐了一些比较有代表性的开源函数库.这些函数库都是解决一些比较通用的问题,具备良好的文档,并非是一个强制你遵循某种规则和代码结构的框架,可以很好地嵌入到你的应用程序当中.当然,作者也给出了一些推荐理由: Hangfire.这是一个运行在ASP.NET中

CvsHelper 使用指南

用于读取和写入CSV文件的.NET库. 非常快速,灵活和易于使用. 支持读写自定义类对象. 入门 要安装CsvHelper,请从包管理器控制台运行以下操作. Install-Package CsvHelper 读 读取所有记录 阅读所有记录很可能简单. 如果有一个的类结构的镜像CSV文件,可以将整个文件读入. var csv = new CsvReader( textReader ); var records = csv.GetRecords<MyClass>(); 如果要自定义CSV文件映射