আমি কীভাবে একটি স্ট্রিংকে সি # তে পূর্ণসংখ্যায় রূপান্তর করব?
আমি কীভাবে একটি স্ট্রিংকে সি # তে পূর্ণসংখ্যায় রূপান্তর করব?
উত্তর:
আপনি যদি নিশ্চিত হন যে এটি সঠিকভাবে বিশ্লেষণ করবে তবে ব্যবহার করুন
int.Parse(string)
আপনি না হলে, ব্যবহার করুন
int i;
bool success = int.TryParse(string, out i);
সতর্ক করা! নীচের ক্ষেত্রে, i
0 এর সমান হবে 10 এর পরে নয় TryParse
।
int i = 10;
bool failure = int.TryParse("asdf", out i);
এটি কারণ TryParse
একটি আউট প্যারামিটার ব্যবহার করে , রেফ প্যারামিটার নয়।
int myInt = System.Convert.ToInt32(myString);
বিভিন্ন অন্যদের হিসাবে উল্লেখ করেছি, এছাড়াও আপনি ব্যবহার করতে পারেন int.Parse()
এবং int.TryParse()
।
আপনি যদি নিশ্চিত হন যে string
সর্বদা একটি হবেন int
:
int myInt = int.Parse(myString);
আপনি যদি string
সত্যিই int
প্রথম কিনা তা পরীক্ষা করতে চান :
int myInt;
bool isValid = int.TryParse(myString, out myInt); // the out keyword allows the method to essentially "return" a second value
if (isValid)
{
int plusOne = myInt + 1;
}
string varString = "15";
int i = int.Parse(varString);
বা
int varI;
string varString = "15";
int.TryParse(varString, out varI);
int.TryParse
এটি নিরাপদ যেহেতু আপনি যদি অন্য কোনও কিছু রাখেন varString
(উদাহরণস্বরূপ "fsfdsfs") আপনি একটি ব্যতিক্রম পাবেন। ব্যবহারের int.TryParse
STRING কখন int- এ রূপান্তরিত করা যাবে না এটি ফিরে আসবে 0
।
আপনি যদি নিশ্চিত হন যে আপনার স্ট্রিংয়ে "রিয়েল" নম্বর রয়েছে, বা আপনি যে কোনও ব্যতিক্রম উদ্ভূত হতে পারেন তবে এটি ব্যবহার করুন।
string s="4";
int a=int.Parse(s);
প্রক্রিয়াটিতে আরও কিছু নিয়ন্ত্রণের জন্য ব্যবহার করুন
string s="maybe 4";
int a;
if (int.TryParse(s, out a)) {
// it's int;
}
else {
// it's no int, and there's no exception;
}
4 কৌশল এখানে বেঞ্চমার্ক করা হয়।
দ্রুততম উপায়টি নিম্নলিখিত হিসাবে দেখা গেল:
y = 0;
for (int i = 0; i < s.Length; i++)
y = y * 10 + (s[i] - '0');
"এস" হ'ল আপনার স্ট্রিং যা আপনি কোন ইনট এ রূপান্তর করতে চান। এই কোডটি ধরে নিয়েছে যে রূপান্তরকালে আপনার কোনও ব্যতিক্রম হবে না। সুতরাং আপনি যদি জানেন যে আপনার স্ট্রিং ডেটা সর্বদা কোনও প্রকার মান হবে তবে উপরের কোডটি খাঁটি গতিতে যাওয়ার সেরা উপায়।
শেষে, "y" এর আপনার মান মূল্য থাকবে।
bool result = Int32.TryParse(someString, out someNumeric)
এই পদ্ধতি রূপান্তর করতে চেষ্টা করবে someString
মধ্যে someNumeric
, এবং আসতে একটি result
নির্ভর যদি রূপান্তর, সফল হয় true
যদি রূপান্তর সফল হয় এবং false
রূপান্তর ব্যর্থ পারেন। নোট করুন যে রূপান্তরটি কীভাবে Int32.Parse
পদ্ধতিতে ব্যর্থ হয়েছিল এবং পরিবর্তে এটির জন্য শূন্য ফিরে আসে তবে এই পদ্ধতিটি ব্যতিক্রম করবে না someNumeric
।
আরও তথ্যের জন্য, আপনি এখানে পড়তে পারেন:
https://msdn.microsoft.com/en-us/library/f02979c7(v=vs.110).aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-2
এবং
স্ট্রিং এ কীভাবে রূপান্তর করবেন সি # তে পূর্ণসংখ্যা