[转]
如何:创建 C# 控制台应用程序
本主题旨在生成最简单形式的 C# 程序(控制台应用程序)熟悉 Visual Studio 2008 开发环境。由于控制台应用程序是在命令行执行其所有的输入和输出,因此对于快速测试语言功能和编写命令行实用工具,它们是理想的选择。
在本节中,将学习到:
- 如何创建新的控制台应用程序。
- 如何在代码编辑器中使用书签。
- 如何查看解决方案资源管理器。
- 如何使代码保持良好的格式。
- 如何使用 IntelliSense 更快更准确地输入代码。
- 如何生成并运行应用程序。
在该任务中创建的程序将使用 System.IO 命名空间中的类来获取并显示 C:/ 目录中的文件、大小的列表以及子目录。您可以使用这些代码作为基础,开发用于在目录中搜索某个特定文件名的实用工具。
创建 C# 控制台应用程序
- 在“文件”菜单上,单击“新建项目”。
将出现“新建项目”对话框。此对话框列出了 Visual Studio 2008能够创建的不同的默认应用程序类型。
- 选择“控制台应用程序”作为项目类型,并将应用程序的名称更改为“ListFile”。
默认位置应是恰当的,但您始终可以根据需要输入新路径。
- 单击“确定”。
Visual Studio 2008 为您的项目创建以项目标题命名的新文件夹,然后打开 Visual Studio 2008 主窗口和代码窗格,您将在代码窗格中输入和修改用于创建应用程序的 C# 源代码。
注意窗口顶部的工具栏。该工具栏包含各种图标,用于创建、加载和保存项目,编辑源代码,生成应用程序以及隐藏和显示构成 Visual Studio 2008环境的其他窗口。该工具栏的最右端的五个图标用来打开重要的窗口,如“解决方案资源管理器”和“工具箱”。将鼠标指针放在其中任一图标上可获得弹出工具提示帮助。
- 确保“解决方案资源管理器”是可见的,方法是单击屏幕右侧的“解决方案资源管理器”选项卡或工具栏中的“解决方案资源管理器”图标。
“解决方案资源管理器”是非常有用的窗格,因为它显示构成项目的各种文件。该项目中最重要的文件是“Program.cs”文件,它包含应用程序的源代码。
如果希望使 Visual Studio 2008的显示保持美观整洁,了解如何打开和隐藏“解决方案资源管理器”之类的窗口非常重要。默认情况下,“解决方案资源管理器”是可见的。如果要隐藏“解决方案资源管理器”,请单击“自动隐藏”图标(其标题栏中的图钉图标),或打开“解决方案资源管理器”标题栏上的“选项”菜单并启用“自动隐藏”。其他窗口(如“类视图”和“属性”)也有这些图标。
- 在“代码编辑器”中键入类名“Console”。
如果“解决方案资源管理器”仍挡住“代码”窗格,请在“代码”窗格中单击以隐藏它。现在单击 Main 方法内的左大括号 ({) 的右边,然后按 Enter 键开始新行。注意编辑器如何自动缩进光标。
键入 C# 类名或关键字时,您可以选择:自行键入完整的单词,或者让 IntelliSense 工具(“代码”窗 格的一部分)帮您完成。例如,当键入“c”时,将显示一个由单词组成的弹出列表,因为 IntelliSense 会尝试预测您要键入的单词。在本例中,此时您还看不到单词“Console”显示出来。您可以向下滚动列表,或者继续键入单词“console”。当 “console”在列表中突出显示时,按 Enter 或 Tab,或者双击它,Console 将添加到代码中。
使用 IntelliSense 的好处是可以保证大小写和拼写是正确的。是键入代码还是让 IntelliSense 帮你完成,完全由您决定。
- 键入一个句点和方法名 WriteLine。
在 Console 后键入句点时,将立即显示另一个 IntelliSense 列表。该列表包含属于 Console 类的所有可能的方法和属性。您需要的是 WriteLine 方法,可以在列表的底部看到它。自行完成键入 WriteLine 或按向下键以选择它,然后按 Enter 或 Tab 或双击它。WriteLine 将添加到代码中。
键入一个左括号。你将立即看到 IntelliSense 的另一项功能 — 方法签名,它显示为工具提示消息。在本例中,您可以看到 19 个不同的签名,并可以通过单击向上键和向下键浏览它们。
- 键入字符串“该程序列出目录中的所有文件。”
键入此消息时用引号将其引起来,然后添加一个右括号。你将看到显示一条红色波浪下划线,提醒您缺少某些符号。键入一个“分号” (;),下划线将消失。
- 完成程序。
键入或复制并粘贴以下代码来完成程序:
[c-sharp] view plaincopy
- static void Main(string[] args)
- {
- string path;
- Console.Write("请输入要查看的目录:");
- path = Console.ReadLine();
- Console.WriteLine("该程序列出目录中的所有文件:");
- DirectoryInfo dir = new DirectoryInfo(@path);
- foreach (FileInfo file in dir.GetFiles("*.*"))
- {
- Console.WriteLine("{0},{1}",file.Name,file.Length);
- }
- Console.ReadLine();
- Console.WriteLine("输出该目录下的子目录:");
- foreach(DirectoryInfo di in dir.GetDirectories())
- {
- Console.WriteLine("{0}",di.Name);
- }
- Console.ReadLine();
- }
程序中的最后一行是 Console.ReadLine();,它使程序在按 Enter 键之前暂停。如果省略此行,命令行窗口将立即消失,将看不到程序的输出。如果创建的是始终将从命令行控制台中使用的命令行实用工具,可能需要省去对 ReadLine() 方法的调用。
- 运行程序。
现在第一个程序已完成,可以编译和运行了。要执行此操作,请按 F5 或单击工具栏中的“开始”图标。
-
在程序编译和运行后,将打开“控制台”窗口,并显示文件及其大小的列表和该目录下的子目录。按 Enter 键退出该程序。