控制台o / p到文本文件

时间:2014-05-23 12:21:24

标签: text-files

namespace WhileLoop
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("\nEnter name of the participant (Quit to quit): ");
               String name = Console.ReadLine();
                //Console.Write("Enter the telephone number of the participant: ");
                //int number = Convert.ToInt32(Console.ReadLine());

            while (name != "quit")
            {
                //String name = Console.ReadLine();
                Console.Write("Enter the telephone number of the participant: ");
                int number = Convert.ToInt32(Console.ReadLine());
                Console.Write("\nEnter name of the participant (Quit to quit): ");
                name = Console.ReadLine();
                FileStream fs = new FileStream("Conference1.txt", FileMode.Create);
                TextWriter tmp = Console.Out;
                StreamWriter sw = new StreamWriter(fs);
                Console.SetOut(sw);
                Console.WriteLine(name,number); 
                Console.SetOut(tmp);
                sw.Close();


            }
            Console.Read();
        }
    }
}

Iam尝试保存我输入的名称和电话输入,保存在名为conference1.text的文件中。但只有姓氏(退出)只保存在txt文件中。如何保存我在txt文件中输入的所有输入?

1 个答案:

答案 0 :(得分:0)

查看您指定的文件模式:

FileStream fs = new FileStream("Conference1.txt", FileMode.Create);

根据the documentation

  

指定操作系统应创建新文件。 如果该文件已存在,则会被覆盖

如果您想追加到该文件,您可以尝试使用FileMode.Append。此外,如果您不需要实时附加文件,则可以将所有输入值存储在列表中,然后在循环后将列表写入文件。 (这样你就不会一遍又一遍地打开/写入/关闭文件,这是很多I / O.)