カテゴリ: C# 更新日: 2025/10/24

C#のエスケープシーケンスと改行コードの基本をわかりやすく解説!初心者向け入門

C#のエスケープシーケンスと改行コードの基本
C#のエスケープシーケンスと改行コードの基本

先生と生徒の会話形式で理解しよう

生徒

「C#で文字の中に改行とかタブを入れる方法ってありますか?」

先生

「とても良い質問ですね。C#では『エスケープシーケンス』という特別な書き方を使うことで、文字列の中に改行やタブを入れることができるんです。」

生徒

「エスケープシーケンス?なんだか難しそうですね…」

先生

「大丈夫です。実はとてもシンプルなんですよ。実際の例を見ながら理解していきましょう!」

1. エスケープシーケンスとは?

1. エスケープシーケンスとは?
1. エスケープシーケンスとは?

エスケープシーケンスとは、文字列の中で「特別な意味を持つ文字」を表現するための書き方です。C#では、バックスラッシュ(\)を使って「特別な動作」を文字の中に埋め込むことができます。

例えば、「改行」や「タブ(空白のようなスペース)」など、通常の文字では表現できない動きを指示するために使います。

エスケープシーケンスを使うと、コンソール(画面)に出力する文字をより見やすく整えることができます。

2. 代表的なエスケープシーケンス一覧

2. 代表的なエスケープシーケンス一覧
2. 代表的なエスケープシーケンス一覧

まずは、C#でよく使われるエスケープシーケンスを一覧で見てみましょう。

エスケープシーケンス 意味 説明
\n 改行 次の行に移動します(WindowsでもUnixでも使えます)。
\r 復帰 行の先頭に戻ります。古いシステムで使われることがあります。
\t タブ 横方向に一定の空白を入れます。
\\ バックスラッシュ \自体を文字として出したいときに使います。
\" ダブルクォーテーション 文字列の中で「"」を使いたいときに使います。
\' シングルクォーテーション 文字の中で「'」を使いたいときに使います。

3. 改行コードとは?

3. 改行コードとは?
3. 改行コードとは?

改行コードとは、テキストの中で「ここで行を区切る」という意味を持つ特別な記号のことです。パソコンのOSによって、改行コードの種類が異なります。

  • Windows:\r\n(復帰+改行)
  • macOS / Linux:\n(改行のみ)

ただし、C#のConsole.WriteLine()を使えば、自動的に環境にあった改行コードを使ってくれるため、特別に意識する必要はあまりありません。

4. 改行を使った出力の例

4. 改行を使った出力の例
4. 改行を使った出力の例

それでは、実際にC#で改行を使う例を見てみましょう。\nを使うことで、文字列の途中に改行を入れることができます。


Console.WriteLine("こんにちは!\nC#の世界へようこそ!");

このコードを実行すると、コンソールには次のように表示されます。


こんにちは!
C#の世界へようこそ!

文字列の中に「\n」を入れたことで、表示が2行に分かれました。とてもよく使う書き方です。

5. タブやクォーテーションの出力例

5. タブやクォーテーションの出力例
5. タブやクォーテーションの出力例

次に、タブやクォーテーションを出す例も見てみましょう。


Console.WriteLine("商品名\t価格");
Console.WriteLine("りんご\t100円");
Console.WriteLine("バナナ\t120円");
Console.WriteLine("彼は言いました:\"こんにちは!\"");

実行結果は次の通りです。


商品名    価格
りんご    100円
バナナ    120円
彼は言いました:"こんにちは!"

\tで「タブ空白」を、\"で「ダブルクォーテーション」を表現しています。表のような整った表示をしたいときや、文字の中に「"」を含めたいときにとても便利です。

6. バックスラッシュを文字として出したいとき

6. バックスラッシュを文字として出したいとき
6. バックスラッシュを文字として出したいとき

エスケープシーケンスの記号である「\」をそのまま出したい場合は、2つ重ねて「\\」と書きます。


Console.WriteLine("フォルダのパスは C:\\Users\\Public です。");

出力結果は次の通りです。


フォルダのパスは C:\Users\Public です。

Windowsのパス(フォルダの場所)などを出力するときによく使います。

7. @を使った逐語的文字列(エスケープ不要)

7. @を使った逐語的文字列(エスケープ不要)
7. @を使った逐語的文字列(エスケープ不要)

もう1つの便利な方法として、「@」を使った逐語的文字列(ちくごてきもじれつ)があります。

これは、文字列の前に@をつけることで、エスケープシーケンスを無効化し、そのままの文字として扱う方法です。


Console.WriteLine(@"C:\Users\Public\Documents");

このように書くと、「\\」ではなく「\」を1つ書くだけで済みます。複雑なパスを扱うときや、長い文章を複数行に分けて書きたいときに便利です。


Console.WriteLine(@"こんにちは!
C#の世界へようこそ!");

このように書くと、実際に2行に分かれて出力されます。


こんにちは!
C#の世界へようこそ!

8. エスケープシーケンスを使うときの注意点

8. エスケープシーケンスを使うときの注意点
8. エスケープシーケンスを使うときの注意点

エスケープシーケンスはとても便利ですが、間違って書くとエラーの原因になります。

  • \の後に意味のない文字を書くとエラーになります。
  • 文字列の中で多用しすぎると、コードが読みにくくなります。
  • 長いパスや文章を扱うときは、@を使うと見やすくなります。

慣れてきたら、状況に応じて「\を使う方法」と「@を使う方法」を使い分けるようにしましょう。

カテゴリの一覧へ
新着記事
C#で複数ファイルをまとめて操作する方法(foreach・LINQ)をやさしく解説!
C#のインターフェースとは?クラス設計を柔軟にする基本技術
C#のコンストラクタの役割と使い方!オブジェクト初期化の基本
COBOLでデータベース接続を理解しよう!初心者でもわかる基本の考え方
人気記事
No.1
Java&Spring記事人気No1
C#のpartialクラスとは?初心者でも理解できるクラス分割の基本
No.2
Java&Spring記事人気No2
C#で型を調べる方法!GetType()・typeof演算子の違いと使い方
No.3
Java&Spring記事人気No3
C#の数値型をマスターしよう!int・double・decimalの違いと使い方
No.4
Java&Spring記事人気No4
COBOLのCOPY句の使い方を完全ガイド!初心者でもわかる共通部品の再利用方法