Cómo incluir comillas en una cadena

Respuestas:

162

Escapa de ellos con barras invertidas.

"I want to learn \"C#\""
Kennytm
fuente
El manual de referencia es útil: msdn.microsoft.com/en-us/library/ms228362.aspx
S.Lott
2
no puede utilizar varios "" "al formatear una cadena String.Format (" <E> <A KH=\"{0}\" ID=\"{1}\"/> <C> <T ID = \ " {2} \ "SID = \" {3} \ "> <LP = \" {4} \ "N = \" {5} \ "/> </T> </C> </E>", params) no funcionará con varias comillas. Utilice esta respuesta que está marcada correctamente y acostúmbrese al hábito de hacerlo.
New Bee
@ANiempre es justo decir que @newbee está equivocado y que hay un contraejemplo funcional: string ok = string.Format(@"""{0}"" = {1}", "yes", true);pero no se vincule a imágenes estúpidas e irrelevantes que hacen perder el tiempo a las personas. Este es un sitio técnico
barlop
82

Además de escapar de las comillas con barras invertidas, también consulte la pregunta SO 2911073, que explica cómo podría utilizar alternativamente las comillas dobles en una cadena con prefijo @:

string msg = @"I want to learn ""c#""";
NeilDurant
fuente
Necesitaba esto en mi lógica de reemplazo. string nullHideDecimal = @ "<HideDecimal i: nil =" "verdadero" "/>"; y luego dataContractXML = dataContractXML.Replace (nullHideDecimal, "<HideDecimal> 0 </HideDecimal>");
Ziggler
20

Yo suelo:

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

a diferencia del equivalente

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

Debido a que el primero tiene mucho menos ruido que el segundo, es más fácil ver errores tipográficos, etc.

Lo uso mucho en pruebas unitarias.

James Cochrane
fuente
Me gusta tu modo.
Mahdi-Malv
13
string str = @"""Hi, "" I am programmer";

SALIDA - "Hola", soy programador

algo
fuente
Link ha sido ciberocupado
Ross Anderson
4

Utilice caracteres de escape, por ejemplo, este código:

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

dará salida:

Quiero aprender "c #"

ŁukaszW.pl
fuente
0

También puede declarar una constante y usarla cada vez. ordenado y evita confusiones:

const string myStrQuote = "\"";
Chagbert
fuente
-1

El código:

string myString = "Hello " + ((char)34) + " World." + ((char)34);

La salida será:

Hola Mundo."

Ariel Terrani
fuente