C#写入和读出文本文件

  • 写入文本文件
    class WriteTextFile
    {
        static void Main()
        {
            //如果文件不存在,则创建;存在则覆盖
            //该方法写入字符数组换行显示
            string[] lines = { "first line", "second line", "third line","第四行" };
            System.IO.File.WriteAllLines(@"C:\testDir\test.txt", lines, Encoding.UTF8);

            //如果文件不存在,则创建;存在则覆盖
            string strTest = "该例子测试一个字符串写入文本文件。";
            System.IO.File.WriteAllText(@"C:\testDir\test1.txt", strTest, Encoding.UTF8);

            //在将文本写入文件前,处理文本行
            //StreamWriter一个参数默认覆盖
            //StreamWriter第二个参数为false覆盖现有文件,为true则把文本追加到文件末尾
            using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\testDir\test2.txt",true))
            {
                foreach (string line in lines)
                {
                    if (!line.Contains("second"))
                    {
                        file.Write(line);//直接追加文件末尾,不换行
                        file.WriteLine(line);// 直接追加文件末尾,换行   
                    }
                }
            }
        }
    }
  •  读取文本文件
    class ReadTextFile
    {
        static void Main()
        {
            //直接读取出字符串
            string text = System.IO.File.ReadAllText(@"C:\testDir\test1.txt");
            Console.WriteLine(text);

            //按行读取为字符串数组
            string[] lines = System.IO.File.ReadAllLines(@"C:\testDir\test.txt");
            foreach (string line in lines)
            {
                Console.WriteLine(line);
            }

            //从头到尾以流的方式读出文本文件
            //该方法会一行一行读出文本
            using (System.IO.StreamReader sr = new System.IO.StreamReader(@"C:\testDir\test.txt"))
            {
                string str;
                while ((str = sr.ReadLine()) != null)
                {
                    Console.WriteLine(str);
                }
            }
            Console.Read();
        }
    }

 

 

posted @ 2012-07-05 22:42  蒹葭白露  阅读(97469)  评论(1编辑  收藏  举报