2010-06-25 2 views
3

Я использую C#, и я хочу преобразовать строку в int, чтобы проверить имя. Например, ** или 12 не является именем. Я просто хочу преобразовать строку в значения ASCII, а затем проверит имя. Как мне это сделать?Преобразование строки в int с использованием C#

+3

SO должен отклонить любой вопрос, содержащий строку «wanna» –

+0

+1 @Michael. Я до сих пор не знаю, каков настоящий вопрос, просто набросился на него, основываясь на самом названии. – drharris

+0

Боюсь, что вы слишком много делаете. Чтобы проверить, что имя не содержит чисел, вы можете просто использовать метод string.contains(), например, – KroaX

ответ

2

Преобразование туда и обратно просто:

int i = int.Parse("42"); 
string s = i.ToString(); 

Если вы не знаете, что входная строка является действительным, используйте метод int.TryParse().

-1

Это не для меня ясно, что вы пытаетесь сделать, но вы можете получить коды ASCII для строки с этим кодом:

System.Text.Encoding.ASCII.GetBytes(str) 
1

Из того, что я понимаю, вы хотите, чтобы убедиться, что данный строка представляет действительное имя? Я бы сказал, что вам, вероятно, следует предоставить более подробную информацию о том, что составляет для вас действительное имя, но я могу нанести ему удар. Вы всегда можете перебрать все символы в строке, убедившись, что они буквы или пробелы:

public bool IsValidName(string theString) 
{ 
    for (int i = 0; i < theString.Length - 1; i++) 
    { 
     if (!char.IsLetter(theString[i]) && !char.IsWhiteSpace(theString[i])) 
     { 
      return false; 
     } 
    } 
    return true; 
} 

имен, конечно, может иметь другие законные символы, такие как апостроф ', так что вы должны были бы настроить этот немного, но это отправная точка из того, что я понимаю, ваш вопрос действительно есть. (Очевидно, что не все символы пробела считались бы приемлемыми.)

+2

+1 для проверки имени, хотя я лично использовал для этого регулярное выражение. – riffnl

+1

Вы правы, RegEx будет разумной вещью здесь. – Phong

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