Tobias Bußmann wrote:
Private Function StringToHex(src as string, separator as string) As string
  dim n, L, v as integer
  dim s as string

  L = LenB(src)
  for n=1 to L
    v = AscB(MidB(src, n, 1))
    s = s + RightB("00"+Hex(v),2)+separator
  next

  return LeftB(s, LenB(s)-LenB(separator))
End Function

Das ist aber für längere Strings sehr langsam.

Nimm besser folgendes
Private Function StringToHexJoinP(src as string, separator as string) As string
 #pragma BackgroundTasks false

 dim L, v as integer
 dim s() as string

 L = LenB(src)
 for n as integer = 1 to L
   v = AscB(MidB(src, n, 1))
   s.Append RightB("00"+Hex(v),2)
 next

 return Join(s, separator)
End Function


Auf meinem G5 im debug mode braucht der erste Code 60 Ticks für 10 kB Daten, der zweite 24 für 100 kB Daten.

Gruß,

Tom

Antwort per Email an