2011-10-02 13 views
8

मुझे यकीन है कि मैं यहाँ कुछ नहीं छूटा है हूँ। एक निश्चित परियोजना के साथ मुझे यह जांचने की ज़रूरत है कि कोई स्ट्रिंग खाली या शून्य है या नहीं।आसान तरीका है?

इस लेखन के एक आसान तरीका है?

if(myString == "" || myString == null) 
{ 
    ... 
+0

मैंने वास्तव में खोज की। कभी-कभी बहुत स्पष्ट चीजें रडार के नीचे फिसल जाती हैं। – Phil

+1

प्रश्न-चिह्नों के लायक नहीं थे, एक लिंक [स्ट्रिंग.इएसनूलऑरिएक्टी] जोड़ना (http://msdn.microsoft.com/en-us/library/system.string.isnullorempty%28v=vs.110%29.aspx) –

उत्तर

26

हाँ, वहाँ वास्तव में यह पहले से ही के लिए String.IsNullOrEmpty सहायक विधि है:

if (String.IsNullOrEmpty(myString)) { 
    ... 
} 
+1

और एक संबंधित नोट पर: http://stackoverflow.com/questions/2552350/string-isnullorempty-check-for-space/2552381#2552381 – xanatos

0

आप .NET 4 पर हैं, तो आप उपयोग कर सकते हैं

if(string.IsNullOrWhiteSpace(myString)){ 

} 
बाकी

:

if(string.IsNullOrEmpty(myString)){ 

} 
+5

'कुछ और के लिए IsNullOrWhiteSpace' जांच के' "" 'तो बराबर होने से प्रश्न में कोड स्निपेट की तुलना में इसमें अलग-अलग अर्थशास्त्र होंगे। – Joey

5
if (string.IsNullOrEmpty(myString)) { 
    ... 
} 

या आप विस्तार तरीकों में एक मोड़ का लाभ ले सकता है, वे इस अशक्त होने की अनुमति:

static class Extensions { 
    public static bool IsEmpty(this string s) { 
     return string.IsNullOrEmpty(s); 
    } 
} 

जो तब तुम लिखो करने देता है:

if (myString.IsEmpty()) { 
    ... 
} 

हालांकि आप शायद एक और चुनना चाहिए 'खाली' से नाम।

+0

विस्तार विधियों का अच्छा उदाहरण! धन्यवाद! – Phil

+0

क्यों नहीं 'string.IsNullOrEmpty (रों)' 'रों == बातिल के बजाय || एस == स्ट्रिंग। लक्षण '? – Nawaz

+0

आप बिल्कुल सही हैं :) –

-1

// यदि स्ट्रिंग को शून्य पर परिभाषित नहीं किया गया है तो IsNullOrEmpty यह बहुत अच्छा काम करता है लेकिन यदि स्ट्रिंग को शून्य परिभाषित किया गया है तो ट्रिम अपवाद फेंक देगा।

if(string.IsNullOrEmpty(myString.Trim()){ 
... 
} 

// आप IsNullOrWhiteSpace जो स्ट्रिंग में एक से अधिक सफेद स्थान के लिए अच्छी तरह से काम का उपयोग कर सकते .i.e यह कई सफेद स्थान भी

if(string.IsNullOrWhiteSpace (myString.Trim()){ 
    ... 
    } 
+1

"ट्रिम" एक स्टैंडअलोन फ़ंक्शन नहीं है, यह स्ट्रिंग का एक उदाहरण विधि है। उचित उपयोग: 'myString.Trim() ', लेकिन जब मेरा स्ट्रिंग शून्य है तो वह उड़ाता है। 'String.IsNullOrWhiteSpace()' –

+0

का उपयोग करें, मैं आपके साथ सहमत हूं, इसलिए मैंने उपरोक्त कोड में सही किया है। धन्यवाद @ हंसकेस्टिंग – Dipitak

0

के लिए सच लौट अशक्त चेकों का उपयोग कर सकते से बचने के लिए ?? ऑपरेटर।

var result = value ?? ""; 

मैं अक्सर डेटा में भेजने से बचने के लिए गार्ड के रूप में इसका उपयोग करता हूं जो मैं विधियों में नहीं चाहता हूं।

JoinStrings(value1 ?? "", value2 ?? "") 

इसका उपयोग अवांछित स्वरूपण से बचने के लिए भी किया जा सकता है।

string ToString() 
{ 
    return "[" + (value1 ?? 0.0) + ", " + (value2 ?? 0.0) + "]"; 
} 

इसका उपयोग कथन में भी किया जा सकता है, यह बहुत अच्छा नहीं है लेकिन कभी-कभी आसान हो सकता है।

if (value ?? "" != "") // Not the best example. 
{ 
} 
संबंधित मुद्दे