準備
(なし)
デザイン
- フォーム (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)