C# 開発

C# ヒア文字列を扱う

準備

(なし)

デザイン

  • フォーム (Form1) にボタン (button1) を配置します。
  • フォーム (Form1) にテキストボックス (textBox1) を配置します。

サンプルコード (C#)

namespace WinFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string s = @"円記号は \ 記号です。
                         改行には \n は不要です。";

            textBox1.Text = s;
        }
    }
}

解説

文字列 s を初期化する際に、開始のダブルクォーテーションの先頭に @ を付けると、ヒア文字列として処理されます。ヒア文字列では、\ 記号はそのまま扱われます。また、改行もその通りに扱われます。

注意点ですが、通常ソースコードを記述するときには、インデントを付けます。しかし、ヒア文字列の途中で改行した場合にはインデントのスペースもそのまま文字列として処理されます。したがって、改行した際には、エディタの左端から記述する必要があり、ソースコードの見栄えが悪くなります。

通常は、\ 記号のみを処理できることを目的に、ファイルパスを記述する箇所で使われると思います。例えば、"C:\\Windows\\System32" をヒア文字列で表現すると、@"C:\Windows\System32" と表現でき、\ 記号を 2 つ重ねる必要がありません。

尚、ヒア文字列は C# のみ使用可能だと思われます。

結果

動作確認環境

Visual Studio 2022 Professional (.NET 7 C#11)

ログ

初版:2016.04.06 Visual Studio 2015 Professional (C# 6.0)

-C# 開発