首页 > 解决方案 > 将用户输入写入并保存到桌面上的文本文件

问题描述

我是学习 C# 的新手,我正在尝试创建一个简单的控制台应用程序,它会询问用户一组问题,然后将答案保存到桌面上的 .txt 文件中。但是,我下面的代码似乎不起作用。

static void Main(string[] args)
        {
            Console.WriteLine("Enter your first name.");
            string firstName = Console.ReadLine();
            Console.WriteLine("Enter your last name.");
            string lastName = Console.ReadLine();
            Console.WriteLine("Enter your job title.");
            string jobTitle = Console.ReadLine();
            Console.WriteLine("What came first, the chicken or the egg?");
            string chickenEgg = Console.ReadLine();

            string path = @"C:\Users\njones\Desktop\NiallJones.txt";

            File.WriteAllText(path, firstName, lastName, jobTitle, chickenEgg);

            Console.WriteLine("Your information has been recorded. A copy can be found on your desktop.");
        }

我相信问题在于 File.WriteAllText 部分。请有人帮我指出正确的方向,为什么这不起作用,以及我能做些什么来改进这一点?

谢谢!

标签: c#

解决方案


始终检查您尝试使用的功能的文档。

public static void WriteAllText (string path, string contents);

正如你所看到的,有两个参数可以进入这个函数。

要写入文件,您需要编写一个字符串(内容)。c# 中的字符串类型有一个运算符重载 (+) 用于将字符串放在一起。

File.WriteAllText(path, firstName+lastName+jobTitle+chickenEgg);

但是,当您阅读该文件时,您会感到失望:“NameLastNameJobTitleChickenOrEgg”

因此,我建议您在字段之间放置一个分隔符,以便您可以使用该String.split()函数分解您的字符串并获取各个字段。

您的目标输出将类似于:“Name;LastName;JobTitle;ChickenOrEgg”


推荐阅读