[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
写了个冒泡的
话说和不用 str2hex 的结果没区别嘛...
不知道这样是不是按 Local 顺序排列的
  1. arr = Array("ACE_OVER", "AC-012", "-1","@fas" ,"520", "淡淡的忧伤", "098", "小小")
  2. For i=0 To UBound(arr)
  3. arr(i) = str2hex(arr(i))
  4. Next
  5. For i=1 To UBound(arr)
  6. For j=i To 1 Step -1
  7. If CStr(arr(j))<CStr(arr(j-1)) Then
  8. tmp = arr(j)
  9. arr(j) = arr(j-1)
  10. arr(j-1) = tmp
  11. End If
  12. Next
  13. Next
  14. For i=0 To UBound(arr)
  15. WScript.Echo (arr(i))
  16. WScript.Echo hex2str(arr(i))
  17. Next
  18. Function str2hex(str)
  19. Dim i,char,arr()
  20. ReDim arr(Len(str))
  21. For i=1 To Len(str)
  22. char = Mid(str,i,1)
  23. If Asc(char)<0 Then
  24. arr(i-1) = char
  25. Else
  26. arr(i-1) = "\x" & Right("0" & Hex(Asc(char)),2)
  27. End If
  28. Next
  29. str2hex = Join(arr,"")
  30. End Function
  31. Function hex2str(hexstr)
  32. Dim i
  33. For i=0 To 127
  34. If i <> 92 Then
  35. hexstr = Replace(hexstr,"\x" & Right("0" & Hex(i),2),Chr(i))
  36. End If
  37. Next
  38. hex2str = Replace(hexstr,"\x5c","\")
  39. End Function
复制代码
1

评分人数

    • yu2n: 乐于助人技术 + 1

TOP

如果不涉及字节操作,还是 js 好用啊

TOP

回复 5# yu2n


    科学计数法不靠谱吧,受精度限制,只有头几个字是准的,后面就只保留位数了,给个反例:
  1. arr = Array("ACE_OVER" & String(17, "_") & "AAA", "ACE_OVER" & String(20, "_"),"ACE_OVER" & String(17, "_") & "AAA")
复制代码
1

评分人数

    • yu2n: 多谢指点。技术 + 1

TOP

返回列表