c convert string int using parse
Tutorial despre cum să convertiți șirul în Int în C #. Veți afla mai multe metode de conversie, cum ar fi Parse, TryParse & Convert, pe baza cerințelor:
comparați două fișiere în Linux și găsiți diferențele
Cei mai mulți dintre noi ne-am aflat din când în când în această situație când trebuie să convertim un șir într-un tip de date întreg.
De exemplu, să spunem că primesc un șir „99” de la o sursă de date (din baza de date, date de intrare ale utilizatorului, etc), dar avem nevoie de el ca număr întreg pentru a efectua unele calcule, aici, va trebui mai întâi să îl convertim într-un număr întreg înainte de a începe unele operații aritmetice.
Există mai multe modalități de a face acest lucru și să analizăm câteva dintre metodele utilizate pe scară largă.
=> Verificați aici seria completă de antrenament C #
Ce veți învăța:
- Metoda Int.Parse
- System.Convert Method
- metoda int.TryParse
- Conversia șirului non-numeric în întreg
- Concluzie
- Lectură recomandată
Metoda Int.Parse
Metoda Int.Parse funcționează ca minuni dacă sunteți sigur că conversia dvs. nu va genera niciodată o eroare. Acesta este unul dintre cele mai simple și mai simple moduri de a converti un șir într-un număr întreg. Poate genera o eroare dacă conversia nu are succes.
Această metodă este utilizată în principal atunci când aveți un număr întreg sub formă de șir. De exemplu, primiți un număr de șir de la o intrare de utilizator, cum ar fi „99”. Să încercăm un program simplu pentru a converti acest șir într-un număr întreg.
Program
Program de clasă publică
{ public static void Main() { String str = '99'; int number = int.Parse(str); Console.WriteLine(number); } }
Ieșire
Ieșirea programului de mai sus:
99
Explicaţie
Programul va returna valoarea numerică a șirului.
Partea dificilă a utilizării metodei int.Parse este problema aruncării unei erori dacă șirul nu este într-un format corect, adică dacă un șir conține alte caractere decât numerele.
Dacă este prezent un caracter diferit de numeral, această metodă va genera următoarea eroare:
“(System.FormatException: Input string was not in a correct format.)”
System.Convert Method
O altă modalitate de a converti un șir în întreg este folosind metoda Convert. Această metodă nu este la fel de simplă ca metoda anterioară, deoarece trebuie să fim gata să gestionăm orice excepție care poate apărea din cauza interacțiunii programului cu date eronate.
ce este testarea sistemului cu exemplu
Excepțiile pot consuma, de asemenea, multă memorie, prin urmare nu este recomandabil să întâlniți nicio excepție dorită sau nedorită în timpul fluxului de execuție. De exemplu, dacă apare o excepție într-o buclă, atunci o mulțime de memorie va fi consumată în aruncarea lor și, prin urmare, vă va încetini programul.
Utilizarea metodei Convert este destul de utilă dacă doriți să cunoașteți motivul din spatele eșecului analizei. Poate surprinde excepția și afișa detaliile eșecului.
Program
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); } }
Ieșire
„Int convertit este: 123”
Explicaţie
În programul de mai sus, am folosit metoda convert pentru a converti un șir într-un număr întreg. Aici, dacă variabila String este numerică, atunci va fi convertită în întreg, dar în cazul unui șir eronat și va genera o excepție care va fi gestionată de blocul de captură.
metoda int.TryParse
Una dintre cele mai frecvente modalități de a analiza o reprezentare șir într-un întreg pe 32 de biți este folosind metoda TryParse. Această metodă nu ia în considerare niciun spațiu gol înainte sau după șir, dar toate celelalte caractere ale șirului ar trebui să aibă un tip numeric adecvat pentru a facilita o conversie.
De exemplu, orice spațiu alb, alfabet sau caracter special din variabilă poate provoca o eroare.
Metoda TryParse acceptă doi parametri, primul este șirul pe care utilizatorul dorește să îl convertească, iar al doilea parametru este cuvântul cheie „out” urmat de variabila în care doriți să stocați valoarea. Acesta va returna o valoare bazată pe succesul sau eșecul conversiei.
TryParse(String, out var)
Să aruncăm o privire la un program simplu pentru a converti un șir numeric într-un număr întreg.
Program
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); } } }
Ieșire
Valoarea întregului este 999
Explicaţie
În programul de mai sus, am folosit „TryParse” pentru a converti șirul numeric într-un număr întreg. În primul rând, am definit o variabilă șir pe care trebuie să o convertim. Apoi am inițializat o altă variabilă „numerică” de tip întreg. Apoi am folosit o variabilă booleană pentru a stoca valoarea returnată a analizei try.
Dacă revine adevărat, atunci înseamnă că șirul a fost convertit cu succes într-un număr întreg. Dacă se returnează fals, atunci există o problemă cu șirul de intrare. Am înconjurat întregul fragment de program în blocul try-catch pentru a gestiona orice excepție care ar putea apărea.
Conversia șirului non-numeric în întreg
În toate programele de mai sus, am încercat să convertim valoarea șirului numeric în întreg, dar în scenariul din lumea reală, de cele mai multe ori trebuie să gestionăm șiruri care conțin caractere speciale, alfabete împreună cu numerele. Dacă vrem să obținem doar valoarea numerică, atunci poate fi puțin dificil.
De exemplu, avem un șir de prețuri cu o valoare de 100 USD și trebuie să obținem prețul în întreg. În acest caz, dacă încercăm să folosim oricare dintre abordările discutate mai sus, vom obține o excepție.
Aceste tipuri de scenarii pot fi tratate cu ușurință utilizând o buclă for și regex după împărțirea unui șir într-o matrice de caractere.
Să aruncăm o privire asupra programului:
class Program { static void Main(string() args) { string price = '0'; string priceNumeric = ''; for(inti =0; i Ieșire
Valoarea numerică a prețului este: 100
Explicaţie:
cum se folosesc fișiere .torrent
În codul de mai sus, avem o variabilă de preț a tipului de date șir. Apoi definim și inițializăm o altă variabilă de șir priceNumeric. Ideea este să o utilizați pentru a păstra partea numerică a variabilei de preț.
Apoi, am folosit o buclă for pentru a verifica numerele din fiecare caracter din șir. Pentru a face acest lucru, am preluat mai întâi caracterele din variabila ch folosind index. Apoi am folosit expresia regex pentru a verifica dacă caracterul pe care l-am ales din șir se potrivește cu orice cifră numerică sau nu. (Expresia „ d” a Regex indică potrivirea cu o singură cifră numerică.).
Apoi concatenăm și stocăm șirul de numere în variabila priceNumeric. Odată ce bucla este terminată, toate șirurile dvs. numerice vor fi adăugate la această variabilă și toate celelalte caractere, inclusiv caractere speciale, alfabete etc. vor fi eliminate.
După cum știm, acest șir conține acum doar caracterele numerice și putem folosi direct conversia pentru a transforma acest șir într-un număr întreg.
Concluzie
În acest tutorial, am aflat cum putem converti un șir într-un număr întreg. De asemenea, am învățat să folosim diferitele metode care pot fi utilizate pentru conversie pe baza cerinței.
Citire sugerată = >> Cum se convertește șirul în întreg în Java Și Cum se convertește întregul în șir în Java
Apoi, am discutat despre un program de conversie a șirurilor cu caractere speciale sau alfabete într-un număr întreg prin eliminarea părților care nu sunt întregi. Acest exemplu de program poate fi modificat conform cerințelor utilizatorului și poate fi folosit pentru a extrage date numerice din orice șir.
=> Citiți aici Ghidul C # pentru începători
Lectură recomandată
- Tutorial C # String - Metode de șiruri cu exemple de coduri
- Java String cu buffer de șiruri și tutorial pentru generatorul de șiruri
- Fire Java cu metode și ciclu de viață
- Funcții Python String
- Tutorial Python String Split
- Aflați cum să utilizați C # StringBuilder Class și metodele sale cu exemple
- Script avansat Unix Shell: matrici, operatori de testare a fișierelor și șirurilor, variabile speciale
- C # Număr aleatoriu și C # Generator de șiruri aleatorii cu exemple de cod