musicstashall
Знающий
- Сообщения
- 322
- Репутация
- 7
Доброго.
Требуется бинарную строку представить в виде читаемых символов, как в Hex-редакторах. То, что я сам сделал, работает медленно, хотелось бы улучшить результат и оптимизировать грамотно код. Прошу помощи.
Требуется бинарную строку представить в виде читаемых символов, как в Hex-редакторах. То, что я сам сделал, работает медленно, хотелось бы улучшить результат и оптимизировать грамотно код. Прошу помощи.
Код:
Local $iBinary = 'f534000041726368694672616d650041'
ConsoleWrite(BinaryToASCII($iBinary) & @CR)
Func BinaryToASCII($iBinary)
Local $t = TimerInit()
Local $aData = StringRegExp($iBinary, '([0-9A-Fa-f]{2})', 3)
Local $sString = ''
For $i = 0 To 16
If $i > UBound($aData) -1 Then
$sString &= '.'
ContinueLoop
EndIf
Switch '0x' & $aData[$i]
Case 0x20 To 0x7f, 0x80 To 0xff
$sString &= Chr('0x' & $aData[$i])
Case Else
$sString &= '.'
EndSwitch
Next
ConsoleWrite(TimerDiff($t) & @CR)
Return $sString
EndFunc