我对这一切真的很陌生。我需要用 C# 编写一个 exe 应用程序。我需要做的是能够通过控制台将值传递到函数中。但我不确定如何存储通过控制台输入的值......
我知道我们可以使用 Read() 来读取输入的内容,但是,当我处理多个值时,我该怎么做呢?任何帮助将不胜感激!!提前致谢
我对这一切真的很陌生。我需要用 C# 编写一个 exe 应用程序。我需要做的是能够通过控制台将值传递到函数中。但我不确定如何存储通过控制台输入的值......
我知道我们可以使用 Read() 来读取输入的内容,但是,当我处理多个值时,我该怎么做呢?任何帮助将不胜感激!!提前致谢
您首先选择控制台应用程序模板(在新项目中)
然后,在 Main 函数中,您可以一次读取一行
string line = Console.ReadLine();
这可能会将您的问题转移到:如何从字符串中获取值?
如果你一次只有一个 int,它是
int x = int.Parse(line);
您是指将命令行参数传递给控制台应用程序吗?如果是这样,则有一个字符串数组参数(例如 args)来保存它们。请参阅此代码。
static void Main(string[] args)
{
}
嗯,我想他想知道如何重复读取一些值并将其传递给函数。
为此,您可以使用简单的 while 循环。
string data = Console.ReadLine();
do {
dummyFunction(data);
data = Console.ReadLine();
} while (data != "");
int year, month, day;
Console.WriteLine("Please enter your birth year : ");
year = int.Parse(Console.ReadLine());
Console.WriteLine("Please enter your birth month : ");
month = int.Parse(Console.ReadLine());
Console.WriteLine("Please enter your birth day : ");
day = int.Parse(Console.ReadLine());
Console.Write("You are ");
Console.Write(CalculateAge(year, month, day));
Console.Write(" years old.");
另一种方法是:
Console.WriteLine("Please enter your birthday in the format YY-MM-DD : ");
string line = Console.ReadLine();
string[] parts = line.Split(new char[] { '-' });
int age = CalculateAge(parts[0],parts[1],parts[2]);
Console.WriteLine("You are {0} years old.", age);
-PLEASE- 做一些输入检查。
您想以编程方式将文本编译成代码吗?如果是这样,您应该阅读 Microsoft 的此 KB 条目。如何使用 C# 编译器以编程方式编译代码
或者,如果您想在控制台中从用户那里获取输入,您应该使用Console.ReadLine()
.
Console.Write("Enter your name: ");
string name = Console.ReadLine();
Console.Write("Enter your age: ");
int age = int.Parse(Console.ReadLine());
Console.Write("Hello {0}, you are {1} years old.", name, age);
您基本上可以手动进行解析工作。例如,如果输入是姓名,则后跟年龄。
Natthawut 22
您可以使用 Console.ReadLine() 来获取字符串"Nattawut 22"
。然后使用String.Split(' ')
; 得到一个数组{"Natthawut","22"}
。Convert.ToInt32(val)
然后使用;将第二个元素转换为整数
我相信必须有更好的方法来做到这一点,但这是我通常的做法:)