Mai mult
Cum pot converti fișiere String la Int?
Am un TextBoxD1.Text și vreau să-l convertească la o int
să-l stocați într-o bază de date.
Cum pot face asta?
594
27
Încercați acest lucru:
sau mai bine:
De asemenea, deoarece
Int32.TryParse
returnează obool
poti folosi valoarea returnată de a lua decizii cu privire la rezultatele de parsare încercare:Dacă sunteți curioși, diferența între Analiza " și " TryParse` este cel mai bine rezumată astfel:
Utilizați această opțiune dacă vă simțiți încrezător că conținutul casetei de text este un int valid. O opțiune mai sigură este
Acest lucru vă va oferi cu unele valoare implicită puteți folosi. `Int32.TryParse, de asemenea, returnează o valoare booleană care indică dacă a fost în măsură să elimine sau nu, astfel încât să puteți folosi chiar și ca o condiție de un "dacă" declarație.
Nu o't arunca dacă textul nu este numeric.
O alta modalitate ar fi:
Diferența dintre cele două este că primul va arunca o excepție în cazul în care valoarea în caseta de text poate't fi transformat, întrucât cea de-a doua ar întoarce false.
Aveți nevoie pentru a analiza șir, și, de asemenea, necesitatea de a se asigura că acesta este cu adevărat în formatul de un număr întreg.
Cel mai simplu mod este aceasta:
Fii atent atunci când se utilizează Converti.ToInt32() pe un char!
Se va reveni la UTF-16 Cod de caracter!
Dacă ai acces șir numai într-o anumită poziție cu ajutorul
[i]
operatorul de indexare se va reveni ochar
și nu ostring
!Bucurați-vă de ea...
La TryParse declarație returnează un boolean reprezentând dacă analiza a reușit sau nu. Dacă a reușit, analizat valoare este memorată în cel de-al doilea parametru.
Vezi Int32.TryParse (String, Int32) pentru mai multe informații detaliate.
În timp ce există deja multe solutii aici care descriu
int.Analiza
, nu's ceva important lipsește în toate răspunsurile. De obicei, șirul reprezentărilor de valori numerice diferă de cultură. Elementele numerice, siruri de caractere, cum ar fi simboluri monetare, de grup (sau mii), separatoare și separatoare zecimale toate varia în funcție de cultură.Dacă doriți să creați un mod robust pentru a analiza un șir la un număr întreg, l'e, prin urmare, important să se ia informații de cultură în considerare. Dacă tu nu't, [cultura actuală settings][1] va fi folosit. Care ar putea da un utilizator destul de neplăcută surpriză ... sau chiar mai rău, dacă te're parsarea formate de fișiere. Dacă doriți doar limba engleză parsarea, l's cel mai bun pentru a face pur și simplu explicit, prin specificarea culturii setările pentru a utiliza:
Pentru mai multe informații, citiți pe CultureInfo, în mod special [NumberFormatInfo][2] de pe MSDN.
[1]: https://msdn.microsoft.com/en-us/library/system.threading.thread.currentculture(v=vs. 110).aspx [2]: https://msdn.microsoft.com/en-us/library/system.globalization.numberformatinfo(v=vs. 110).aspx
Puteți scrie propriile extesion metodă
Și ori de câte ori în codul de apel
În acest caz concret
Așa cum sa explicat în TryParse documentația, TryParse() returnează valoarea booleană care indică faptul că un număr valid a fost găsit:
Puteți folosi fie,
sau
Conversie de "string" a
int
se poate face pentru:int
,Int32
, `Int64 și alte tipuri de date care reflectă întreg tipuri de date în .NETExemplele de mai jos arată această conversie:
Acest spectacol (pentru informatii), date adaptor element inițializat la int valoare. Același lucru poate fi făcut direct ca,
Ex.
[Link-ul pentru a vedea acest demo][1].
Acest lucru ar face
Sau puteți folosi
Consultați Rețea Microsoft pentru Dezvoltatori pentru mai multe informații
Puteți converti un string la int în C# folosind:
Funcțiile converti clasa respectiv
a Converti.ToInt16()
,Converti.ToInt32()
,Converti.ToInt64()
sau prin utilizareaAnaliza " și " TryParse
Funcții. Sunt prezentate exemple de aici.Ai, de asemenea, poate utiliza o metodă de prelungire][1], astfel încât acesta va fi mai ușor de citit (deși toată lumea este deja folosit periodic Analiza funcțiilor).
se poate face ca mai jos, fără TryParse sau încorporat funcții
Puteți converti șir de caractere la o valoare întreagă, cu ajutorul de analiza metoda.
De exemplu: