C#中的Convert.ToInt32方法可以将一个对象转换为32位有符号整数。当传入参数为一个字符串时,如果字符串是一个合法的数字形式,那么转换后返回相应的整数。如果字符串不是一个合法的数字形式,那么转换会抛出FormatException异常。
如果字符串表示一个负数,Convert.ToInt32方法同样可以将其转换为32位有符号整数。例如:
string str = "-123";
int num = Convert.ToInt32(str);
Console.WriteLine(num);
这段代码将会输出-123。
需要注意的是,如果字符串表示的整数超出了32位有符号整数的范围(即-2147483648到2147483647),那么转换会抛出OverflowException异常。如果想要将一个字符串转换为64位有符号整数,可以使用Convert.ToInt64方法。
总之,在使用Convert.ToInt32方法将字符串转换为32位有符号整数时,只要字符串表示的是一个合法的整数,包括正数和负数,都可以被成功转换。