2013年10月28日 星期一

特殊資料類型轉換函式

參考引用來源
--
  1. '浮點數轉二進位
  2. Private Function DecimalToBinary(ByVal DecValue As Integer, Optional ByVal Num As Integer = 16) As String
  3. Dim sValue As String = Convert.ToString(DecValue, 2)
  4. Return String.Format("{0:x" & (Num - sValue.Length).ToString & "}", 0) & sValue
  5. End Function
  6.  
  7. Public Function BinaryToInteger(ByVal sData As String) As Integer
  8. Dim I As Int16
  9. Dim bTemp As Integer
  10.  
  11. bTemp = 0
  12. For I = sData.Length - 1 To 0 Step -1
  13. bTemp = bTemp + Val(sData.Substring(I, 1)) * 2 ^ (sData.Length - 1 - I)
  14. Next
  15. Return bTemp
  16. End Function
  17.  
  18. 'Byte轉二進位
  19. Public Function ByteToBinary(ByVal bData As Byte) As String
  20. Return Strings.Right("00000000" & BinaryRecursive(bData), 8)
  21. End Function
  22.  
  23. Public Function BinaryRecursive(ByVal bData As Byte) As String
  24. If bData > 1 Then
  25. Return BinaryRecursive(bData >> 1) & IIf((bData And 1) = 1, "1", "0")
  26. Else
  27. Return "1"
  28. End If
  29. End Function
  30.  
  31. '二進位轉Byte
  32. Public Function BinaryToByte(ByVal sData As String) As Byte
  33. Dim I As Int16
  34. Dim bTemp As Byte
  35.  
  36. bTemp = 0
  37. For I = sData.Length - 1 To 0 Step -1
  38. bTemp = bTemp + Val(sData.Substring(I, 1)) * 2 ^ (sData.Length - 1 - I)
  39. Next
  40. Return bTemp 
  End Function

沒有留言:

張貼留言