एक स्ट्रिंग में उद्धरण कैसे शामिल करें


81

मेरे पास एक स्ट्रिंग है "मैं" सी # "सीखना चाहता हूं"। सी # के पहले और बाद के उद्धरणों को मैं कैसे शामिल कर सकता हूं?


जवाबों:


165

उन्हें बैकस्लैश से बचो।

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

संदर्भ मैनुअल सहायक है: msdn.microsoft.com/en-us/library/ms228362.aspx
S.Lott

2
जब आप एक स्ट्रिंग String.Format को फॉर्मेट कर रहे हैं तो आप कई "" का उपयोग नहीं कर सकते हैं। {2} \ "SID = \" {3} \ "> <LP = \" {4} \ "N = \" {5} \ "/> </ T> </ C> </ E>" ।। पैरामीटर) कई उद्धरण साथ काम नहीं करेंगे इस जवाब यह है कि सही ढंग से चिह्नित है और यह कर की आदत आदत हो का उपयोग करें
नई मधुमक्खी

@ANeves कहना उचित है कि @newbee गलत है और यह एक कार्य-प्रति-उदाहरण है: string ok = string.Format(@"""{0}"" = {1}", "yes", true);लेकिन बेवकूफ अप्रासंगिक चित्रों से लिंक नहीं करते हैं जो लोगों के समय को बर्बाद करते हैं। यह एक तकनीकी साइट है
बार्लोप

82

बैकस्लैश के साथ उद्धरणों से बचने के साथ-साथ, एसओ प्रश्न 2911073 भी देखें, जो बताता है कि आप वैकल्पिक रूप से @ -परिफ़ाइड स्ट्रिंग में दोहरे-उद्धरण का उपयोग कैसे कर सकते हैं:

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

मुझे अपने प्रतिस्थापित तर्क में इसकी आवश्यकता थी। string 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);

उत्पादन होगा:

मैं "सी #" सीखना चाहता हूं


1

आप हर बार एक स्थिरांक घोषित कर सकते हैं और उसका उपयोग कर सकते हैं। साफ और भ्रम से बचा जाता है:

const string myStrQuote = "\"";

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.