使用 Visual Studio 创建 .NET 控制台应用程序
使用 Visual Studio 创建 .NET 控制台应用程序 - .NET | Microsoft Docs
-
在 Program.cs 或 Program.vb 中,将
Main
方法的内容(当前只是调用Console.WriteLine
的行)替换为以下代码:Console.WriteLine("What is your name?"); var name = Console.ReadLine(); var currentDate = DateTime.Now; Console.WriteLine($"{Environment.NewLine}Hello, {name}, on {currentDate:d} at {currentDate:t}!"); Console.Write($"{Environment.NewLine}Press any key to exit..."); Console.ReadKey(true);
此代码会在控制台窗口中显示一条提示,然后等待用户输入字符串并按 Enter。 它会将此字符串存储到名为
name
的变量中。 它还会检索 DateTime.Now 属性的值(其中包含当前的本地时间),并将此值赋给currentDate
变量。 同时会在控制台窗口中显示这些值。 最后会在控制台窗口中显示一条提示,并调用 Console.ReadKey(Boolean) 方法来等待用户输入。Environment.NewLine 是一种独立于平台和语言的表示换行符的方式。 替代方法是在 C# 中使用
\n
和在 Visual Basic 中使用vbCrLf
。字符串前面的美元符号 (
$
) 使你可以将表达式(如变量名称)放入字符串中的大括号内。 表达式值将代替表达式插入到字符串中。 此语法称为内插字符串。 $
特殊字符将字符串文本标识为内插字符串 。 内插字符串是可能包含内插表达式的字符串文本 。 将内插字符串解析为结果字符串时,带有内插表达式的项会替换为表达式结果的字符串表示形式。 从 C# 6 开始可以使用此功能。-
string name = "Mark";
var date = DateTime.Now;// Composite formatting:
Console.WriteLine("Hello, {0}! Today is {1}, it's {2:HH:mm} now.", name, date.DayOfWeek, date);
// String interpolation:
Console.WriteLine($"Hello, {name}! Today is {date.DayOfWeek}, it's {date:HH:mm} now.");
// Both calls produce the same output that is similar to:
// Hello, Mark! Today is Wednesday, it's 19:40 now.
若要将字符串标识为内插字符串,可在该字符串前面加上 $
符号。 字符串字面量开头的 $
和 "
之间不能有任何空格。
具备内插表达式的项的结构如下所示:
{<interpolationExpression>[,<alignment>][:<formatString>]}
括号中的元素是可选的。 下表说明了每个元素:
元素 | 描述 |
---|---|
interpolationExpression |
生成需要设置格式的结果的表达式。 null 的字符串表示形式为 String.Empty。 |
alignment |
常数表达式,它的值定义表达式结果的字符串表示形式中的最小字符数。 如果值为正,则字符串表示形式为右对齐;如果值为负,则为左对齐。 有关详细信息,请参阅对齐组件。 |
formatString |
受表达式结果类型支持的格式字符串。 有关更多信息,请参阅格式字符串组件 |