2010-01-14 2 views

ответ

1

Попробуйте

int age; 
bool result = Int32.TryParse(txtAge.Text, out age); 

if (result) 
{ 
    // Parse succeeded and get the result in age 
} 
else 
{ 
    // Parse failed 
} 

См Int32.TryParse Method (String, Int32)

The TryParse method is like the Parse method, except the TryParse method does not throw an exception if the conversion fails. It eliminates the need to use exception handling to test for a FormatException in the event that s is invalid and cannot be successfully parsed.

2

Конечно, вы можете» t, int и string - два совершенно разных типа. Тем не менее, самое простое решение:

int age = Int32.Parse(txtAge.Text); 

Более надежен:

int age; 
Int32.TryParse(txtAge.Text, out age); 
+0

обратите внимание, что вы, вероятно, следует проверить 'bool', который возвращается из' TryParse', и ИМО это гораздо более распространенным явлением чтобы увидеть 'int', чем' Int32' (до вас, хотя). –

+0

На первом я могу согласиться, на втором (int против Int32) это зависит от того, что говорят в программных соглашениях внутри компании. Мои соглашения с компаниями state: используйте int для деклараций и явных преобразований и Int32 для вызовов статических методов. Но, конечно, это все субъективно для политики :). – Webleeuw

Смежные вопросы