DOBON.NET プログラミング道: .NET Framework, VB.NET, C#, Visual Basic, Visual Studio, インストーラ, ...

文字列を記述する時"\"を"\\"と書くのが面倒なときは?

例えばString型の変数sに"C:\Dos\App\readme.txt"という文字列を代入したい時にVBでは

s = "C:\Dos\App\readme.txt"

と書くことが出来ますが、C#では次のように"\"を"\\"とする必要があります。

s = "C:\\Dos\\App\\readme.txt";

これはC#では"\"という文字があるとエスケープシーケンスが処理されてしまうためですが、これが面倒というケースもあります。そのような時は次のように@を付けることにより、エスケープシーケンスが処理されないように指定することができます。

s = @"C:\Dos\App\readme.txt";

このとき、"で囲まれた文字列の中に"という文字を入れるには、VBと同じように""と2回書きます。

注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。

  • Windows Vista以降でUACが有効になっていると、ファイルへの書き込みに失敗する可能性があります。詳しくは、こちらをご覧ください。
  • .NET Tipsをご利用いただく際は、注意事項をお守りください。