当前位置:  编程技术>.net/c#/asp.net

c# 迭代器 遍历文件信息的实例代码

    来源: 互联网  发布时间:2014-08-30

    本文导语:  c#迭代器遍历文件信息。 1,迭代文件的行   代码示例: public static IEnumerable ReadLines(string fileName) { using (TextReader reader = File.OpenText(fileName)) { string line; if ((line = reader.ReadLine()) != null) { yield return line; } } } static void Main() { f...

c#迭代器遍历文件信息。

1,迭代文件的行
 

代码示例:
public static IEnumerable ReadLines(string fileName)
{
using (TextReader reader = File.OpenText(fileName))
{
string line;
if ((line = reader.ReadLine()) != null)
{
yield return line;
}
}
}
static void Main()
{
foreach (string line in Iterator.ReadLines(""))
{
Console.WriteLine(line);
}
}

2,借助迭代器和谓词对文件中的行进行筛选
 

代码示例:
public static IEnumerable where(IEnumerable source, Predicate predicate)
{
if (source == null || predicate == null)
{
throw new ArgumentNullException();
}
return WhereImplemeter(source, predicate);
}
private static IEnumerable WhereImplemeter(IEnumerable source, Predicate predicate)
{
foreach (T item in source)
{
if (predicate(item))
{
yield return item;
}
}
}
static void Main()
{
IEnumerable lines = File.ReadAllLines(@"your file name");
Predicate predicate = delegate(string line)
{
return line.StartsWith("using");
};
foreach (string str in where(lines, predicate))
{
Console.WriteLine(str);
}
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Vectors 成员 begin():返回第一个元素的迭代器
  • python迭代器的使用方法实例
  • C++ MultiMaps 成员 begin():返回指向第一个元素的迭代器
  • Hadoop 迭代式计算框架 Guagua
  • C++ Vectors 成员 rbegin():返回Vector尾部的逆迭代器
  • 可能是迭代的宏定义编译器不认
  • C++ Lists(链表) 成员 rbegin():返回指向第一个元素的逆向迭代器
  • 我的客户端为单进程。会迭代生成4000个连接,但成功连到服务器上的总是不超过3973个。
  • C++ Maps 成员 end():返回指向map末尾的迭代器
  • 牛顿迭代法求多项式在1.5附近的值2*x的3次幂--4x平方+3*x-6=0的实现代码
  • C++ MultiMaps 成员 end():返回一个指向multimap末尾的迭代器
  • php递归与迭代实现快速排序
  • C++ Maps 成员 rend():返回一个指向map头部的逆向迭代器
  • php使用递归与迭代实现快速排序示例
  • C++ Maps 成员 rbegin():返回一个指向map尾部的逆向迭代器
  • python的迭代器与生成器实例详解
  • C++ Vectors 成员 rend():返回Vector起始的逆迭代器
  • C++设计模式之迭代器模式
  • php iis7站长之家
  • C++ MultiMaps 成员 rbegin():返回一个指向mulitmap尾部的逆向迭代器
  • C++ MultiMaps 成员 rend():返回一个指向multimap头部的逆向迭代器


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3