vb.net進(jìn)制轉(zhuǎn)化 vb十進(jìn)制轉(zhuǎn)n進(jìn)制

VB中16進(jìn)制與10進(jìn)制相互轉(zhuǎn)化,該怎么處理

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

VB.NET,八/十六進(jìn)制轉(zhuǎn)十進(jìn)制的函數(shù),怎么轉(zhuǎn)?

'此函數(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)

vb.net 16進(jìn)制數(shù)字轉(zhuǎn)換為字符串

把字符串“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ù)??????

vb.net 如何將十六進(jìn)制字符串轉(zhuǎn)換為十六進(jìn)制變量

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)

營銷型網(wǎng)站建設(shè)