转换为byte会出现此错误:输入字符串格式不正确

Lib*_*ban 0 c# string byte type-conversion char

convert.tobyte用来将字符串转换为字节.问题是如果数据是:

string data = "5";

byte b = Convert.tobyte(data); 工作良好.

但是,如果

string data = "S"

byte b = Convert.tobyte(data); 不工作!

ERROR : Input string was not in a correct format

有什么不对,怎么解决?

注意:我正在从中提取值 textbox,因此仅当输入是数字而不是字符时,转换才有效.

如何包含角色?

谢谢.

Elm*_*lmo 5

这正是Convert.ToByte方法的工作原理http://msdn.microsoft.com/en-us/library/y57wwkzk.aspx

只接受字符串中的数字.

你的意思是将字符串转换为字节数组吗?如果是这样,请使用:

byte[] byteArray = System.Text.Encoding.UTF8.GetBytes(yourString);
Run Code Online (Sandbox Code Playgroud)

对于仅包含ASCII字符的字符串,数组的大小将等于字符串的长度,并且数组中的每个字节都将是ord该字符的值.如果string包含多字节字符,则数组的大小将大于string的长度.