C#のエスケープシーケンスのサンプルです。
目次
| サンプル | エスケープシーケンスとは | 
| よく使うエスケープシーケンスの一覧 | |
| エスケープシーケンスのサンプル | |
| ファイルパスをわかりやすくする(逐語的リテラル文字列) | |
| シングルコーテーションとダブルコーテーションの違い | 
エスケープシーケンスとは
| \文字 | 
- エスケープシーケンスは、通常の文字の機能や意味とは異なるものにします。
 →\"で文字列をくくるダブルコーテーション(")の機能はなくして文字として表示させる。
 →\nで改行とします。\tをタブとします。
- 円記号(バックスラッシュ)はエスケープ文字です。
- エスケープ文字+文字でエスケープシーケンスです。
- バックスラッシュ(円記号)の文字コードは、shift-jisでは0x5C、UnicodeではU+005Cです。
よく使うエスケープシーケンスの一覧
| エスケープシーケンス | 説明 | 
|---|---|
| \" | ダブルコーテーションを文字として表示する | 
| \t | タブを表示する | 
| \\ | バックスラッシュを表示する | 
| \n | 改行 (LF)する | 
| \b | バックスペースで1文字削除 | 
| \uxxxx | Unicode文字を表示する xxxxは4桁の16進数です。\u0041はAと表示されます。 | 
以下は、Microsoftの文字列のエスケープシーケンスのリンクです。
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/strings/#string-escape-sequences
エスケープシーケンスのサンプル
using System;
class Test1
{
    static void Main()
    {
        // ダブルコーテーションを表示
        Console.WriteLine("あいう\"えお");// あいう"えお
        // タブを表示 
        Console.WriteLine("あいう\tえお"); // あいう	えお
        // バックスラッシュを表示
        Console.WriteLine("あいう\\えお"); // あいう\えお
        // 改行を行う
        Console.WriteLine("あいう\nえお"); // 「う」の後に改行が入る
        // バックスペースで1文字削除    
        Console.WriteLine("あいう\bえお"); // あいえお
        // 記号(バックスラッシュ)とuと16進数4桁を指定
        Console.WriteLine("\u0041"); // A
        Console.WriteLine("\u0041\u0042"); // AB
    }
}8行目は、エスケープシーケンスでダブルコーテーションを文字として表示しています。
ファイルパスをわかりやすくする(逐語的リテラル文字列)
これはエスケープシーケンスになってしまうのを防ぐサンプルです。
using System;
class Test1
{
	static void Main()
	{
		//string a = "D:\Test1\テスト"; //コンパイルエラー
		string a = @"D:\Test1\テスト";
		Console.WriteLine(a); // D:\Test1\テスト
	}
}7行目は、パスを記述しようとしますが円記号がエスケープシーケンスとして機能してしまうのでコンパイルエラーになります.
9行目は、文字列の前に@をつけています。この場合はエラーになりません。
以下は、Microsoftの逐語的リテラル文字列のリンクです。
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/strings/#regular-and-verbatim-string-literals
シングルコーテーションとダブルコーテーションの違い
using System;
class Test1
{
    static void Main()
    {
        Console.WriteLine('あ');// あ
//      Console.WriteLine('あいう');// 
        Console.WriteLine("あいう");// あいう
    }
}7,8行目は、シングルコーテーションで括っています。文字リテラルのみ表示できます。
そのため7行目は文字が表示され8行目はコンパイルエラーになります。
10行目は、ダブルコーテーションで括っています。文字列リテラルを表示できます。
関連の記事
