以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  请教Convert.ToInt32(textSec.Text, 10)函数 10代表什么意思  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=44975)

--  作者:jnletao
--  发布时间:2014/1/13 11:18:00
--  请教Convert.ToInt32(textSec.Text, 10)函数 10代表什么意思
遇到到一个函数,Convert.ToInt32(textSec.Text, 10)
请教 10代表什么意思
--  作者:Bin
--  发布时间:2014/1/13 11:28:00
--  
进制 默认就是10进制.
--  作者:jnletao
--  发布时间:2014/1/13 11:37:00
--  
OK,谢谢BIN老师,刚刚查到一份资料
在 .NET Framework 中, System.Convert 类中提供了较为全面的各种类型、数值之间的转换功能。其中的两个方法可以轻松的实现各种进制的数值间的转换:

Convert.ToInt32(value As String, fromBase As Integer)

可以把不同进制数值的字符串转换为数字,其中 fromBase 参数为进制的格式,只能是2、8、10及16。
其中 value 必须可以转换成数字,例如“nn”、“1100.001”都是不合法的输入,前这是“为找到任何可分析的位”异常,后者是“字符串末尾有其他无法分析的字符”异常,但是如果数的各位数字超过了进制,则也会报和第一个一样的错误。

比如:Convert.ToInt32("0010", 2) 执行的结果为 2。

Convert.ToString(value As Integer, toBase As Integer)

可以把一个数字转换为不同进制数值的字符串格式,其中 toBase 参数为进制的格式,只能是2、8、10及16。

比如:Convert.ToString(2, 2) 执行的结果为 "0010"

现在我们做一个方法实现各种进制间的字符串自由转换:选把它转成数值型,然后再转成相应的进制的字符串:

Public Function ConvertString( _
ByVal value As String, _
ByVal fromBase As Integer, _
ByVal toBase As Integer) As String
Dim n As Integer = Convert.ToInt32(value, fromBase)
Return Convert.ToString(n, toBase)
End Function