C# 将List写入到Text文本

来源:互联网 发布:gps端口配置修改工具 编辑:程序博客网 时间:2024/06/06 02:37

/// <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 sin list) Console.WriteLine(s); //显示出来
 
       Console.ReadKey();//按任一键关闭Console
 
       mgr.WriteListToTextFile(list,@"c:\new.txt");//测试生成新的Txt文件
 
    }
 
}
0 0
原创粉丝点击