web-dev-qa-db-ja.com

C#2つの二重引用符

C#で2つの二重引用符を出力として印刷したい。これを行う方法?

つまり、出力は"" Hello World ""

12
sai sindhu
Console.WriteLine("\"\" Hello world \"\"");

または

Console.WriteLine(@""""" Hello world """"");
22
Balazs Tihanyi

文字列に二重引用符を入れたい場合は、\でエスケープする必要があります

例えば:

string foo = "here is a \"quote\" character";

文字どおり"" Hello World ""を出力する場合は、次のものが必要です。

string helloWorld = "\"\" Hello World \"\"";
output(helloWorld);

(出力は、出力に使用している方法です)

7
Chris

特殊文字を自動的にエスケープする@を使用して出力できます。

string output = "\"\" Hello World \"\"";

string output = @""""" Hello World """"";
2
bdparrish

言語に存在する特殊文字を使用したい場合は、その文字の前に\を追加すると、特殊文字が文字列として動作し始めます。あなたの場合はこのように使用してください

\"Hello Word\"

アウト

 "Hello Word"
2
Rizwan Shahid

これを頻繁に行う必要があり、これをコードでよりクリーンにしたい場合は、このための拡張メソッドが必要になる場合があります。

これは非常に明白なコードですが、それでも、時間を節約して取得できると便利だと思います。

  /// <summary>
    /// Put a string between double quotes.
    /// </summary>
    /// <param name="value">Value to be put between double quotes ex: foo</param>
    /// <returns>double quoted string ex: "foo"</returns>
    public static string PutIntoQuotes(this string value)
    {
        return "\"" + value + "\"";
    }

次に、好きな文字列ごとにfoo.PutIntoQuotes()または "foo" .PutIntoQuotes()を呼び出すことができます。

この助けを願っています。

2
codea

1つの方法は、引用符をエスケープすることです。

var greeting = "\"Hello World\"";
2
Jon

二重引用符の前にバックスラッシュを使用します:\"

1
Diego
Console.WriteLine("\"\"Hello world\"\"");

バックスラッシュ(「\」)文字は、出力される文字列の一部としてではなくコードとして解釈される「特殊」文字の前に置かれます。これは、C#言語で何らかの目的がある文字とは対照的に、文字列の文字部分として扱うようコンパイラーに指示する方法です。

1
SkonJeet

「通常の」二重引用符の前に@ -charを使用すると、それらの二重引用符の間のすべての特殊文字が出力されます

string foo = @"foo "bar"";
1
BlueCacti

それらをエスケープします。

Console.WriteLine("\"Hello world\"");
1
MByD