C# 使用List<String>泛型读取和保存文本文件
作者:C/S框架网  发布日期:2011/06/12 17:37:47
C# 使用List泛型读取和保存文本文件

C# 使用List<String>泛型读取和保存文本文件

有很多案例用到文本文件操作:

1.写过会计系统的朋友会知道,于银行对帐时银行会提供一个文本文件给你,在自己的系统内必须有个处理该文件的模块,可以通过下面的代码进行读取。

2.考勤系统导入打卡资料

/// <summary>
/// 文本文件转换为List
/// </summary>
public class TextListConverter
{
   //读取文本文件转换为List
   public List<string> ReadTextFileToList(string fileName)
   {
      FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
      List<string> list = new List<string>();
      StreamReader sr = new StreamReader(fs);
      //使用StreamReader类来读取文件
      sr.BaseStream.Seek(0, SeekOrigin.Begin);
      // 从数据流中读取每一行,直到文件的最后一行
      string tmp = sr.ReadLine();
      while (tmp != null)
      {
         list.Add(tmp);
         tmp = sr.ReadLine();
      }
      //关闭此StreamReader对象
      sr.Close();
      fs.Close();
      return list;
   }
   
   //将List转换为TXT文件
   public void WriteListToTextFile(List<string> list, string txtFile)
   {
      //创建一个文件流,用以写入或者创建一个StreamWriter
      FileStream fs = new FileStream(txtFile, FileMode.OpenOrCreate, FileAccess.Write);
      StreamWriter sw = new StreamWriter(fs);
      sw.Flush();
      // 使用StreamWriter来往文件中写入内容
      sw.BaseStream.Seek(0, SeekOrigin.Begin);
      for (int i = 0; i < list.Count; i++) sw.WriteLine(list[i]);
      //关闭此文件
      sw.Flush();
      sw.Close();
      fs.Close();
   }
}


创建Console Application,测试代码:
class Program
{
   static void Main(string[] args)
   {
      //测试代码:
      TextListConverter mgr = new TextListConverter();
      List<string> list = mgr.ReadTextFileToList(@"C:\topics.txt");//记取字符串
      foreach (string s in list) Console.WriteLine(s); //显示出来
      Console.ReadKey(); //按任一键关闭Console
      mgr.WriteListToTextFile(list, @"c:\new.txt"); //测试生成新的Txt文件
   }
}


上一篇 下一篇