zoukankan      html  css  js  c++  java
  • Linq学习之路(05) 教你如何使用Linq To CSV

    我们知道Linq to Objects、Linq to SQL、Linq to XML非常方便,但是Linq同样也可以处理csv文件,今天我将告诉大家使用Linq处理文本文件同样很爽!!!!

    csv文件是(逗号分隔值)的英文缩写,通常都是纯文本文件。每个值都是通过逗号“,”分隔开来的。现在我这里有一个学生表,里面有几条学生信息,是用csv文件保存起来的,我截图给大家看看:

    接下来我使用Linq将students.csv文件中的这些学生信息输出到控制台中:

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.IO;
     6 
     7 namespace LinqToCSVDemo
     8 {
     9     class Program
    10     {
    11         static void Main(string[] args)
    12         {
    13             var students = from student in File.ReadAllLines("students.csv")
    14                            where !student.StartsWith("#")
    15                            let line = student.Split(',')
    16                            select new
    17                            {
    18                                Name = line[0],
    19                                Age = line[1],
    20                                Sex = line[2],
    21                                Birthday = line[3],
    22                                Hobby = line[4]
    23                            };
    24 
    25             ObjectDumper.Write(students);
    26             Console.ReadKey();
    27         }
    28     }
    29 }

    输出结果:

    是不是感觉很不可思议?这里我对上面的代码简单的解释一下:

    第13行是将students.csv文件读取到内存中,File.ReadAllLines()方法是定义在System.IO命名空间下的,他的功能就是将students.csv文件中的所有行都取出来。

    第14行是将过滤掉标题行

    第15行是将每行按“,”分割放入到line的char[]数组中

    第16到23行是定义一个匿名类,保存Student对象。

    好吧,这个小小的案例我就说这么多了,大家是不是感觉Linq真的很强大啊?

  • 相关阅读:
    python学习笔记之生成器和迭代器、内置函数
    python学习笔记之装饰器(语法糖)
    python学习笔记第三天
    python学习笔记第二天
    Python学习笔记第一天
    获取系统所有软件的卸载信息
    读取注册表获取计算机上已安装程序的信息
    关机重启后运行父进程
    系统关机重启,提升进程权限
    修改用户密码
  • 原文地址:https://www.cnblogs.com/ARMdong/p/linqtocsv.html
Copyright © 2011-2022 走看看