このチュートリアルでは、Visual Studio 2022 で .NET コンソール アプリケーションを作成して実行する方法について説明します。
前提 条件
.NET デスクトップ開発ワークロードがインストールされている Visual Studio 2022 以降。 このワークロードを選択すると、.NET SDK が自動的にインストールされます。
詳細については、「Visual Studioを使用した .NET SDK のインストール」を参照してください。
アプリを作成する
"HelloWorld" という名前の .NET コンソール アプリ プロジェクトを作成します。
Visual Studio を起動します。
スタート ページで、[新しいプロジェクト
作成] を選択します。
[新しいプロジェクト の作成] ページで、検索ボックス コンソール を入力します。 次に、言語の一覧から C#
選択するか、Visual Basic を し、プラットフォームの一覧から [すべてのプラットフォーム を選択します。 コンソール アプリ テンプレートを選択し、[次へ]選択します。
ヒント
.NET テンプレートが表示されない場合は、必要なワークロードが不足している可能性があります。 探しているものが見つかりませんか? メッセージの下で、[その他のツールと機能のインストール] リンクを選択します。 Visual Studio インストーラーが開きます。 .NET デスクトップ開発 ワークロードがインストールされていることを確認します。
[新しいプロジェクト の構成] ダイアログボックスで、[プロジェクト名] ボックスに「HelloWorld」を入力します。 次 を選択します。
[追加情報 ダイアログで、次の手順を実行します。
- .NET 8を選択します。
- [最上位レベルのステートメントを使用しない] を選択します。
- [作成] を選択します。
このテンプレートでは、コンソール ウィンドウに "Hello, World!" と表示される単純なアプリケーションが作成されます。 コードは、Program.cs または Program.vb ファイルにあります。
namespace HelloWorld; internal class Program { static void Main(string[] args) { Console.WriteLine("Hello, World!"); } }Imports System Module Program Sub Main(args As String()) Console.WriteLine("Hello World!") End Sub End Module使用する言語が表示されない場合は、ページの上部にある言語セレクターを変更します。
このコードでは、
Program配列を引数として受け取る 1 つのメソッドMainを使用して、Stringクラスを定義します。Mainアプリケーション エントリ ポイントは、アプリケーションの起動時にランタイムによって自動的に呼び出されるメソッドです。 アプリケーションの起動時に指定されたコマンドライン引数は、引数 配列で使用できます。C# には、 クラスと
ProgramメソッドMainという名前の機能があります。 このチュートリアルでは、この機能は使用しません。 プログラムで使用するかどうかは、スタイルの好みの問題です。
アプリを実行する
Ctrl+F5 キーを押して、デバッグなしでプログラムを実行します。
コンソール ウィンドウが開き、"Hello, World!" というテキストが画面に印刷されます。 (または、Visual Basic プロジェクト テンプレートでコンマを使用せずに "Hello World!" を実行します。)
任意のキーを押してコンソール ウィンドウを閉じます。
アプリを強化する
アプリケーションを強化して、ユーザーに自分の名前を求め、日付と時刻と共に表示します。
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);Console.WriteLine("What is your name?") Dim name = Console.ReadLine() Dim 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です。文字列の前にドル記号 (
$) を付けると、その文字列の中で変数名などの式を中かっこで囲むことができます。 式の値は、式の代わりに文字列に挿入されます。 インターポレートされた文字列としてこの構文は参照されます。Ctrl+F5 キーを押して、デバッグなしでプログラムを実行します。
名前を入力して、Enter キーを押し、 プロンプトに応答します。
が変更されたコンソール ウィンドウ
任意のキーを押してコンソール ウィンドウを閉じます。
その他のリソース
次の手順
このチュートリアルでは、.NET コンソール アプリケーションを作成しました。 次のチュートリアルでは、アプリをデバッグします。
Visual Studio を使用して .NET コンソール アプリケーションをデバッグする
.NET