Linq To Csv 实例简说

http://www.codeproject.com/Articles/25133/LINQ-to-CSV-library

详细源代码在这里

https://github.com/mperdeck/LINQtoCSV

如上地址無法現在的可以移步这里.

http://pan.baidu.com/s/1kTJv2BH

原文太长,简单的提取出来就是:

1.建立实体类

using LINQtoCSV;
using System;
class Product
{
    [CsvColumn(Name = "ProductName", FieldIndex = 1)]
    public string Name { get; set; }
    [CsvColumn(FieldIndex = 2, OutputFormat = "dd MMM HH:mm:ss")]
    public DateTime LaunchDate { get; set; }
    [CsvColumn(FieldIndex = 3, CanBeNull = false, OutputFormat = "C")]
    public decimal Price { get; set; }
    [CsvColumn(FieldIndex = 4)]
    public string Country { get; set; }
    [CsvColumn(FieldIndex = 5)]
    public string Description { get; set; }
}

2.使用

CsvFileDescription inputFileDescription = new CsvFileDescription
{
    SeparatorChar = ‘,‘,
    FirstLineHasColumnNames = true
};

CsvContext cc = new CsvContext();

IEnumerable<Product> products =
    cc.Read<Product>("products.csv", inputFileDescription);

var productsByName =
    from p in products
    select p;

试验了下,默认支持 "xxx"的分割符

时间: 2024-10-11 13:40:50

Linq To Csv 实例简说的相关文章

使用LINQ查询数据实例和理解

var contacts= from customer in db.Customers where customer.Name.StartsWith("A")&&customer.Orders.Count>0 orderby customer.Name select new {customer.Name,customer.Phone}; 模糊点理解:StartsWith: StartsWith("abbbs") 相当于 like 'a%' ||

让Lua支持Linq吧

第一次接触Linq是在使用C#的时候,这种语法,在处理列表数据非常方便.如果想了解Linq的更多内容可以百度一下Linq,不过你不了解也没关系,让我在Lua中给你展示一下Linq的魅力.简单点说,Linq就是让忽略掉循环的部分,让你更加专业相关的业务实现.算是一种语法糖. 简单举几个例子 1.输出一个类中的所有内容 local test1 = { Attribute1 = "Attribute1", Attribute2 = "Attribute2", Attrib

C#语法之Linq查询基础一

Linq做.Net开发的应该都用过,有些地方很复杂的逻辑用Linq很方便的解决.对于Linq to object.Linq to xml.Linq to sql.Linq to Entity(EF)都可以使用linq查询.不知道大家有没有想过为什么linq对这些都可以使用呢?统一的api适用这么多.其实主要还是IEnummerable<T>和IQueryable<T>两个接口.可能有人会问为什么是两个接口?这两个接口有什么区别或者联系呢?这又要引出来Enummerable.Quer

C#操作Xml:linq to xml操作XML

LINQ to XML提供了更方便的读写xml方式.前几篇文章的评论中总有朋友提,你为啥不用linq to xml?现在到时候了,linq to xml出场了. .Net中的System.Xml.Linq命名空间提供了linq to xml的支持.这个命名空间中的XDocument,XElement以及XText,XAttribute提供了读写xml文档的关键方法. 1. 使用linq to xml写xml: 使用XDocument的构造函数可以构造一个Xml文档对象:使用XElement对象可

python数据存储-- CSV

CSV,其文件以纯文本形式存储表格数据(数字和文本),CSV记录简由某种换行符分隔字段间分隔又其他字符,常见逗号或者制表符, 例如: #coding:utf-8 import csv headers = ['ID','UserName','Password','Age','Country'] rows = [(1001,"guobao","1382_pass",21,"China"), (1002,"Mary","M

Java泛型的内部原理设计泛型的好处

分享一些工作的经验:不存在脱离业务的技术.所有新技术都是为了解决一些业务痛点,让特定业务更爽. 当我们掌握足够多的技术,在遇到问题时就可以选择适合的技术进行解决.反之,如果没有技术储备,就会手足无措,又或者说选择一些不太恰当的技术进行解决,最终都会走一些弯路.踩一些坑.走弯路.踩坑固然是所有项目都会遇到的一个问题,一个人走弯路.踩坑也许不是什么大问题,但整个项目走弯路,这个最终苦的还是我们这些技术人员. 技术储备至关重要,不论是团队还是个人.有了足够的技术储备,才可以游刃有余,做到胸有成竹,遇到

C#的扩展方法解析

在使用面向对象的语言进行项目开发的过程中,较多的会使用到"继承"的特性,但是并非所有的场景都适合使用"继承"特性,在设计模式的一些基本原则中也有较多的提到. 继承的有关特性的使用所带来的问题:对象的继承关系实在编译时就定义好了,所以无法在运行时改变从父类继承的实现.子类的实现与它父类有非常紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化.当你需要复用子类时,如果继承下来的实现不适合解决新的问题,则父类必须重写它或被其他更适合的类替换,这种依赖关系限制

Windows Server 2012 R2 群集故障转移介绍

故障转移群集是一组相互独立的计算机,通过协同工作改善群集角色(以前也叫做群集的应用程序与服务)的可用性与扩展性.群集的服务器(叫做节点)通过物理线缆及软件连接在一起.如果一个或多个群集结点故障,其他节点可继续提供服务(这一过程叫做故障转移).此外群集角色可通过主动监控以验证节点是否正常工作.如果没能正常工作,则会重启动或转移到其他节点.故障转移群集还提供了群集共享卷(CSV)功能,能为群集角色提供一致的分布式名称空间,供群集节点访问所有节点的共享存储.通过使用故障转移群集功能,用户感受到的服务中

ecshop_v2.7.3下载地址

ECShop网店系统 V2.7.3 Release 1106正式版发布 版本提高了用户体验,优化代码,提升安全性,对原有产品各功能线进行梳理合理优化.此版本后台新增云服务,方便用户查看版本和最新补丁信息,同时提供应用服务.新增 银联支付.新增云提醒,加强云服务.新增  新版本淘宝助理数据导入导出和虚拟卡批量上传增加csv实例文件,方便用户数据导入和导出.解决了360浏览器加入购物车,商品数据丢失问题.修改 会员和管理员的密码加密方法,提高安全性.修复安全漏洞. ECShop V2.7.3  UT