使用C#将字符串转换为int

我正在使用C#,我想将字符串转换为int以validation名称。 例如**12不是名称。 我只想将字符串转换为ASCII值,然后validation名称。 我怎么做?

来回转换很简单:

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

如果您不知道输入字符串是有效的,请使用int.TryParse()方法。

根据我的理解,您想validation给定的字符串是否代表有效名称? 我会说你应该提供更多关于什么构成有效名称的细节,但我可以试一试。 您可以始终遍历字符串中的所有字符,确保它们是字母或空格:

 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; } 

当然,名字可以有其他合法的字符,例如撇号',所以你必须对它进行一些自定义,但这是我理解你的问题的起点。 (显然,并非所有的空格字符都符合要求。)

有多种转换方式:

 try { string num = "100"; int value; bool isSuccess = int.TryParse(num, out value); if(isSuccess) { value = value + 1; Console.WriteLine("Value is " + value); } } catch (FormatException e) { Console.WriteLine(e.Message); } 

我不清楚你要做什么,但你可以使用以下代码获取字符串的ASCII代码:

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