c convert string int using parse
स्ट्रिंग को C # में कैसे कन्वर्ट करें, इस पर ट्यूटोरियल। आप आवश्यकताओं के आधार पर कई रूपांतरण विधियों जैसे कि पार्स, ट्रायपर्स और कन्वर्ट सीखेंगे:
हम में से अधिकांश इस स्थिति में एक बार हो चुके हैं जब हमें स्ट्रिंग को पूर्णांक डेटा प्रकार में बदलने की आवश्यकता होती है।
उदाहरण के लिए, मान लें कि मुझे डेटा स्रोत (डेटाबेस, उपयोगकर्ता इनपुट, आदि) से एक स्ट्रिंग '99' प्राप्त होता है, लेकिन हमें कुछ गणना करने के लिए पूर्णांक के रूप में इसकी आवश्यकता है, यहां, हमें शुरू करने से पहले इसे पहले पूर्णांक में बदलना होगा। कुछ अंकगणितीय ऑपरेशन।
ऐसा करने के कई तरीके हैं, और चलो कुछ व्यापक रूप से इस्तेमाल किए गए तरीकों पर ध्यान दें।
=> पूर्ण सी # प्रशिक्षण श्रृंखला यहां देखें
आप क्या सीखेंगे:
- Int.Parse विधि
- सिस्टम.कॉनवर्ट विधि
- int.TryParse मेथड
- नॉन-न्यूमेरिक स्ट्रिंग को इंटेगर में परिवर्तित करना
- निष्कर्ष
- अनुशंसित पाठ
Int.Parse विधि
Int.Parse पद्धति चमत्कार की तरह काम करती है यदि आप सुनिश्चित हैं कि आपका रूपांतरण कभी भी त्रुटि नहीं करेगा। किसी स्ट्रिंग को पूर्णांक में बदलने का यह सबसे आसान और सरल तरीका है। यदि रूपांतरण सफल नहीं होता है, तो यह एक त्रुटि फेंक सकता है।
इस पद्धति का उपयोग मुख्य रूप से तब किया जाता है जब आपके पास स्ट्रिंग के रूप में पूर्णांक होता है। उदाहरण के लिए, आपको '99' जैसे उपयोगकर्ता इनपुट से एक स्ट्रिंग संख्या प्राप्त होती है। आइए इस स्ट्रिंग को पूर्णांक में बदलने के लिए एक सरल प्रोग्राम का प्रयास करें।
कार्यक्रम
सार्वजनिक वर्ग कार्यक्रम
{ public static void Main() { String str = '99'; int number = int.Parse(str); Console.WriteLine(number); } }
उत्पादन
उपरोक्त कार्यक्रम का आउटपुट:
९९
व्याख्या
कार्यक्रम स्ट्रिंग का संख्यात्मक मान लौटाएगा।
Int.Parse मेथड का उपयोग करने का ट्रिकी हिस्सा एक एरर को फेंकने की समस्या है यदि स्ट्रिंग एक सही फॉर्मेट में नहीं है यानी यदि किसी स्ट्रिंग में अंकों के अलावा कोई अन्य वर्ण है।
यदि अंक के अलावा कोई भी वर्ण मौजूद है तो यह विधि निम्नलिखित त्रुटि को प्रस्तुत करेगी:
“(System.FormatException: Input string was not in a correct format.)”
सिस्टम.कॉनवर्ट विधि
एक स्ट्रिंग को पूर्णांक में बदलने का दूसरा तरीका कन्वर्ट विधि का उपयोग करके है। यह विधि पिछली पद्धति की तरह सरल नहीं है क्योंकि हमें किसी भी अपवाद को संभालने के लिए तैयार रहना होगा जो प्रोग्राम के गलत डेटा के साथ बातचीत के कारण हो सकता है।
अपवाद बहुत सारी मेमोरी का उपभोग कर सकते हैं, इसलिए निष्पादन प्रवाह के दौरान किसी भी वांछित या अवांछित अपवाद का सामना करना उचित नहीं है। उदाहरण के लिए, यदि कोई अपवाद लूप में होता है, तो उन्हें फेंकने में बहुत सारी मेमोरी का उपभोग किया जाएगा और इसलिए यह आपके प्रोग्राम को धीमा कर देगा।
यदि आप पार्स की विफलता के कारण को जानना चाहते हैं तो कन्वर्ट विधि का उपयोग करना काफी सहायक है। यह अपवाद को पकड़ सकता है और विफलता विवरण दिखा सकता है।
कार्यक्रम
public class Program { public static String intString = '123'; public static void Main(string() args) { int i = 0; try { i = System.Convert.ToInt32(intString); } catch (Exception e) { } Console.WriteLine('The converted int is : '+i); } }
उत्पादन
'परिवर्तित int है: 123'
व्याख्या
उपरोक्त कार्यक्रम में, हमने एक स्ट्रिंग को पूर्णांक में बदलने के लिए कन्वर्ट विधि का उपयोग किया। यहां यदि स्ट्रिंग चर संख्यात्मक है, तो इसे पूर्णांक में परिवर्तित किया जाएगा, लेकिन एक गलत स्ट्रिंग के मामले में और यह एक अपवाद को फेंक देगा जो कि कैच ब्लॉक द्वारा नियंत्रित किया जाएगा।
int.TryParse मेथड
32-बिट पूर्णांक में एक स्ट्रिंग प्रतिनिधित्व को पार्स करने के सबसे सामान्य तरीकों में से एक है ट्रिपपर्स विधि का उपयोग करके। यह विधि स्ट्रिंग से पहले या बाद में किसी रिक्त स्थान पर विचार नहीं करती है, लेकिन रूपांतरण की सुविधा के लिए अन्य सभी स्ट्रिंग वर्ण उपयुक्त संख्यात्मक प्रकार के होने चाहिए।
उदाहरण के लिए, चर के भीतर कोई भी सफेद स्थान, वर्णमाला या विशेष वर्ण त्रुटि का कारण बन सकता है।
पुनरावर्ती विलय प्रकार c ++
TryParse मेथड दो मापदंडों को स्वीकार करता है, पहला वह स्ट्रिंग है जिसे उपयोगकर्ता कनवर्ट करना चाहता है और दूसरा पैरामीटर कीवर्ड 'आउट' है जिसके बाद वैरिएबल है जिसमें आप मूल्य को संग्रहीत करना चाहते हैं। यह रूपांतरण की सफलता या विफलता के आधार पर एक मूल्य लौटाएगा।
TryParse(String, out var)
आइए एक संख्यात्मक कार्यक्रम को पूर्णांक में बदलने के लिए एक साधारण प्रोग्राम पर एक नजर डालें।
कार्यक्रम
class Program { static void Main(string() args) { try { string value = '999'; int numeric; bool isTrue = int.TryParse(value, out numeric); if (isTrue) { Console.WriteLine('The Integer value is ' + numeric); } } catch (FormatException e) { Console.WriteLine(e.Message); } } }
उत्पादन
इंटेगर का मूल्य 999 है
व्याख्या
उपरोक्त कार्यक्रम में, हमने संख्यात्मक स्ट्रिंग को पूर्णांक में बदलने के लिए P ट्रायपार्स ’का उपयोग किया है। सबसे पहले, हमने एक स्ट्रिंग वेरिएबल को परिभाषित किया है जिसे हमें कन्वर्ट करने की आवश्यकता है। फिर हमने दूसरे पूर्णांक 'संख्यात्मक' प्रकार के पूर्णांक को इनिशियलाइज़ किया। तब हमने ट्रायल पार्स के रिटर्न वैल्यू को स्टोर करने के लिए बूलियन वैरिएबल का इस्तेमाल किया।
यदि यह सच है, तो इसका मतलब है कि स्ट्रिंग को पूर्णांक में सफलतापूर्वक बदल दिया गया है। यदि यह गलत है, तो इनपुट स्ट्रिंग के साथ कुछ समस्या है। हमने किसी भी अपवाद को संभालने के लिए पूरे प्रोग्राम स्निपेट को ट्राइ-कैच ब्लॉक के अंदर घेर लिया है।
नॉन-न्यूमेरिक स्ट्रिंग को इंटेगर में परिवर्तित करना
उपरोक्त सभी कार्यक्रमों में हमने संख्यात्मक स्ट्रिंग मान को पूर्णांक में बदलने की कोशिश की, लेकिन वास्तविक विश्व परिदृश्य में अधिकांश समय हमें उन तारों को संभालना पड़ता है जिनमें अंक के साथ विशेष वर्ण, अक्षर होते हैं। यदि हम केवल संख्यात्मक मान प्राप्त करना चाहते हैं तो यह थोड़ा मुश्किल हो सकता है।
उदाहरण के लिए, हमारे पास $ 100 के मूल्य के साथ एक मूल्य स्ट्रिंग है और हमें पूर्णांक में मूल्य प्राप्त करने की आवश्यकता है। इस मामले में, यदि हम ऊपर चर्चा किए गए किसी भी दृष्टिकोण का उपयोग करने का प्रयास करते हैं, तो हमें एक अपवाद मिलेगा।
इस प्रकार के परिदृश्यों को एक स्ट्रिंग को वर्णों में विभाजित करने के बाद लूप और रेगेक्स के लिए आसानी से नियंत्रित किया जा सकता है।
चलो कार्यक्रम पर एक नज़र है:
class Program { static void Main(string() args) { string price = '0'; string priceNumeric = ''; for(inti =0; i उत्पादन
मूल्य सांख्यिक मूल्य है: 100
स्पष्टीकरण:
उपरोक्त कोड ऑफ कोड में, हमारे पास स्ट्रिंग डेटा प्रकार का एक मूल्य चर है। फिर हम एक और स्ट्रिंग वैरिएबल प्राइस को परिभाषित और इनिशियलाइज़ करते हैं। मूल्य चर के संख्यात्मक भाग को धारण करने के लिए इसका उपयोग करने का विचार है।
अगला, हमने अंकों के लिए स्ट्रिंग में प्रत्येक एकल वर्ण की जांच करने के लिए लूप के लिए उपयोग किया। ऐसा करने के लिए हमने पहली बार वर्ण का प्रयोग करके अनुक्रमणिका में परिवर्तन किया। तब हमने यह जांचने के लिए रेगेक्स एक्सप्रेशन का उपयोग किया कि क्या हमने जो स्ट्रिंग से उठाया है वह किसी संख्यात्मक अंक से मेल खाता है या नहीं। (रेगेक्स का ( d) अभिव्यक्ति एकल संख्यात्मक अंक के साथ मेल खाता है।)
फिर हम मूल्य स्ट्रिंग को न्यूमेरिक वैरिएबल में संकलित और संचित करते हैं। एक बार लूप समाप्त हो जाने के बाद, आपके सभी संख्यात्मक तार इस चर में जोड़ दिए जाएंगे और विशेष वर्ण, वर्णमाला आदि सहित हर दूसरे वर्ण को हटा दिया जाएगा।
जैसा कि हम जानते हैं कि इस स्ट्रिंग में अब केवल संख्यात्मक अक्षर हैं, और हम सीधे इस स्ट्रिंग को पूर्णांक में बदलने के लिए कन्वर्ट का उपयोग कर सकते हैं।
निष्कर्ष
इस ट्यूटोरियल में हमने सीखा कि हम स्ट्रिंग को पूर्णांक में कैसे बदल सकते हैं। हमने उन विभिन्न तरीकों का उपयोग करना भी सीखा, जिनका उपयोग आवश्यकता के आधार पर रूपांतरण के लिए किया जा सकता है।
पठन पाठन = >> जावा में String को Integer में कैसे बदलें तथा Java में Integer को String कैसे कन्वर्ट करें
अगला, हमने गैर-पूर्णांक भागों को हटाकर विशेष वर्ण या अक्षर के साथ तार को पूर्णांक में बदलने के लिए एक कार्यक्रम पर चर्चा की। यह उदाहरण कार्यक्रम उपयोगकर्ता की आवश्यकता के अनुसार ट्विक किया जा सकता है और किसी भी स्ट्रिंग से संख्यात्मक डेटा को पुनः प्राप्त करने के लिए उपयोग किया जा सकता है।
=> यहाँ शुरुआती के लिए सी # गाइड के माध्यम से पढ़ें
अनुशंसित पाठ
- सी # स्ट्रिंग ट्यूटोरियल - कोड उदाहरण के साथ स्ट्रिंग के तरीके
- स्ट्रिंग स्ट्रिंग बफर और स्ट्रिंग बिल्डर ट्यूटोरियल के साथ जावा स्ट्रिंग
- जावा थ्रेड्स विथ मेथड्स एंड लाइफ साइकल
- पायथन स्ट्रिंग फ़ंक्शंस
- पायथन स्ट्रिंग स्प्लिट ट्यूटोरियल
- उदाहरण के लिए C # StringBuilder क्लास और इसके तरीकों का उपयोग करना सीखें
- उन्नत यूनिक्स शैल स्क्रिप्टिंग: एरे, फ़ाइल और स्ट्रिंग टेस्ट ऑपरेटर्स, विशेष चर
- कोड उदाहरणों के साथ सी # रैंडम नंबर और सी # रैंडम स्ट्रिंग जेनरेटर