Як включити лапки в рядок


Відповіді:


165

Втечіть від них за допомогою зворотних скісних рисок.

"I want to learn \"C#\""

Довідковий посібник корисний: msdn.microsoft.com/en-us/library/ms228362.aspx
S.Lott,

2
ви не можете використовувати кілька "" "під час форматування рядка String.Format (" <E> <A KH=\"{0}\" ID=\"{1}\"/> <C> <T ID = \ " {2} \ "SID = \" {3} \ "> <LP = \" {4} \ "N = \" {5} \ "/> </T> </C> </E>", params) не працюватиме з кількома лапками. будь ласка, використовуйте цю відповідь, яка правильно позначена, і звикніть до звички це робити.
New Bee

@ANeves справедливо може сказати, що @newbee помиляється і що існує робочий приклад: string ok = string.Format(@"""{0}"" = {1}", "yes", true);але не посилайтеся на дурні недоречні картинки, які марно витрачають час людей. Це технічний сайт
barlop

82

Окрім уникнення лапок з зворотними скісними рисками , також дивіться запитання SO 2911073, яке пояснює, як ви можете використовувати подвійне цитування в рядку з префіксом @:

string msg = @"I want to learn ""c#""";

Мені це потрібно було в моїй логіці заміщення. рядок nullHideDecimal = @ "<HideDecimal i: nil =" "true" "/>"; а потім dataContractXML = dataContractXML.Replace (nullHideDecimal, "<HideDecimal> 0 </HideDecimal>");
Ziggler

20

Я використовую:

var value = "'Field1','Field2','Field3'".Replace("'", "\""); 

на відміну від еквівалента

var value = "\"Field1\",\"Field2\",\"Field3\"";

Оскільки перший має набагато менше шуму, ніж другий, що полегшує перегляд друкарських помилок тощо.

Я багато використовую його в модульних тестах.


Мені подобається твій спосіб.
Махді-Мальв


4

Використовуйте символи переходу, наприклад, цей код:

var message = "I want to learn \"c#\"";
Console.WriteLine(message);

виведе:

Я хочу вивчити "c #"


1

Ви також можете оголосити константу і використовувати її щоразу. акуратний і уникає плутанини:

const string myStrQuote = "\"";

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.