10進(jìn)制轉(zhuǎn)16進(jìn)制的話可以使用HEX()函數(shù),16進(jìn)制轉(zhuǎn)10進(jìn)制沒有現(xiàn)成函數(shù),可以使用如下代碼實現(xiàn):
創(chuàng)新互聯(lián)公司是專業(yè)的城東網(wǎng)站建設(shè)公司,城東接單;提供網(wǎng)站設(shè)計、做網(wǎng)站,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行城東網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊,希望更多企業(yè)前來合作!
'?用途:將十六進(jìn)制轉(zhuǎn)化為十進(jìn)制
'?輸入:Hex(十六進(jìn)制數(shù))
'?輸入數(shù)據(jù)類型:String
'?輸出:HEX_to_DEC(十進(jìn)制數(shù))
'?輸出數(shù)據(jù)類型:Long
'?輸入的最大數(shù)為7FFFFFFF,輸出的最大數(shù)為2147483647
Public?Function?HEX_to_DEC(ByVal?Hex?As?String)?As?Long
Dim?i?As?Long
Dim?B?As?Long
Hex?=?UCase(Hex)
For?i?=?1?To?Len(Hex)
Select?Case?Mid(Hex,?Len(Hex)?-?i?+?1,?1)
Case?"0":?B?=?B?+?16?^?(i?-?1)?*?0
Case?"1":?B?=?B?+?16?^?(i?-?1)?*?1
Case?"2":?B?=?B?+?16?^?(i?-?1)?*?2
Case?"3":?B?=?B?+?16?^?(i?-?1)?*?3
Case?"4":?B?=?B?+?16?^?(i?-?1)?*?4
Case?"5":?B?=?B?+?16?^?(i?-?1)?*?5
Case?"6":?B?=?B?+?16?^?(i?-?1)?*?6
Case?"7":?B?=?B?+?16?^?(i?-?1)?*?7
Case?"8":?B?=?B?+?16?^?(i?-?1)?*?8
Case?"9":?B?=?B?+?16?^?(i?-?1)?*?9
Case?"A":?B?=?B?+?16?^?(i?-?1)?*?10
Case?"B":?B?=?B?+?16?^?(i?-?1)?*?11
Case?"C":?B?=?B?+?16?^?(i?-?1)?*?12
Case?"D":?B?=?B?+?16?^?(i?-?1)?*?13
Case?"E":?B?=?B?+?16?^?(i?-?1)?*?14
Case?"F":?B?=?B?+?16?^?(i?-?1)?*?15
End?Select
Next?i
HEX_to_DEC?=?B
End?Function
擴(kuò)展資料:
在VB中將十進(jìn)制轉(zhuǎn)化為十六進(jìn)制的函數(shù):
輸入:Dec(十進(jìn)制數(shù))'
輸入數(shù)據(jù)類型:Long'
輸出:D2H(十六進(jìn)制數(shù))'
輸出數(shù)據(jù)類型:String'
輸入的最大數(shù)為2147483647,
輸出最大數(shù)為7FFFFFFFPublicFunction D2H(Dec As Long) As String
Dim a As String
D2H = ""
Do While Dec 0
a = CStr(Dec Mod 16) ? ? ? ? Select Case a ? ? ? ? ? ? Case "10": a = "A"
Case "11": a = "B"
Case "12": a = "C"
Case "13": a = "D"
Case "14": a = "E"
Case "15": a = "F"
End Select
D2H = a D2H
Dec = Dec \ 16 ? ? LoopEnd Function
'此函數(shù)用于十進(jìn)制到二進(jìn)制
Private Function Bin(Number As Long) As Long
Dim Div_value As String
Do
Div_value = (Number Mod 2) Div_value
Number = Int(Number / 2)
Loop Until Number 2
Bin = Number Div_value
End Function
'此函數(shù)用于二進(jìn)制到十進(jìn)制
Private Function value_Bin(Number As Long) As Long
Dim Temp_value As Long, Cyc As Long
For Cyc = 0 To Len(Str(Number))
If Cyc = Len(Str(Number)) Then
value_Bin = Temp_value + Val(Mid(Str(Number), Cyc, 1))
Exit For
End If
If Cyc 0 Then Temp_value = (Temp_value + Val(Mid(Str(Number), Cyc, 1))) * 2
Next Cyc
End Function
'====寫入以上函數(shù)后轉(zhuǎn)值操作:
'十進(jìn)制到十六進(jìn)制:Hex(十進(jìn)制數(shù)值)
'十進(jìn)制到八進(jìn)制:Oct(十進(jìn)制數(shù)值)
'十進(jìn)制到二進(jìn)制:Bin(十進(jìn)制數(shù)值)
'二進(jìn)制到十進(jìn)制:value_Bin(二進(jìn)制數(shù)值)
'八進(jìn)制到十進(jìn)制:Val("O" 八進(jìn)制數(shù)值)
'十六進(jìn)制到十進(jìn)制:Val("H" 十六進(jìn)制數(shù)值)
比如
msgbox DEC_to_BIN(10)
就會返回一個10轉(zhuǎn)換為十進(jìn)制后的結(jié)果
或者簡單點就用
VB自帶函數(shù):
十進(jìn)制轉(zhuǎn)八進(jìn)制:Oct(num)
十六進(jìn)制轉(zhuǎn)八進(jìn)制:oct("H" num)
十進(jìn)制轉(zhuǎn)十六進(jìn)制:hex(num)
八進(jìn)制轉(zhuǎn)十六進(jìn)制:hex("O" num)
十六進(jìn)制轉(zhuǎn)換為十進(jìn)制
Dim str As String
str = Text2.Text
Text10.Text = CLng("H" str)
把字符串“12341168C5B7”轉(zhuǎn)換為16進(jìn)制數(shù)存為string型
用shuzi=Convert.ToInt32("12341168C5B7",16)
就ok了。
反之用 shuzi.ToString("X")就行了。
給分!?。?/p>
12341168C5B7轉(zhuǎn)換成10進(jìn)制數(shù)就是20014839678391。。
而int32的最大值為2,147,483,647。。所以產(chǎn)生錯誤。
所以要用int64,它的最大值為9,223,372,036,854,775,807。也就是16位十六進(jìn)制數(shù)0X7FFFFFFFFFFFFFFF。
難道還有比F靠后的數(shù)??????
numHex =Integer.Parse(strHex, Globalization.NumberStyles.AllowHexSpecifier)
或
numHex = Integer. Parse("H" strHex)
名稱欄目:vb.net進(jìn)制轉(zhuǎn)化 vb十進(jìn)制轉(zhuǎn)n進(jìn)制
文章URL:http://muchs.cn/article24/doeohje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、Google、App設(shè)計、網(wǎng)站建設(shè)、云服務(wù)器、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)