本应该发ajax版块的,发这里因为这里高手多,人气比较旺
解决方案 »
- ExtJS3.4.0的AJAX同步问题怎么解决
- Java程序中解析js文件提示"Request" is not defined
- jquery 鼠标经过移到图片地址时显示图片
- javascript 将字符串转化为类
- 算法挑战:大批量数据插入到select中
- 谁有判断JS运行时间的代码,时间越精细越好!
- 使用表单上传文件时如何在提交前知道上传文件的大小?
- 如何处理IE5中调用window.close()会弹出“是否关闭当前窗口”的提示框的问题
- 请高手查错,当然低手也可以来!
- JS脚本怎么写呀
- jquery鼠标移入某区域屏蔽鼠标滚轮 滚动滚动条
- 动态设置输入框<input>的name属性的值,弄了2天了,晕死
其实慢一点都可以忍受,毕竟50个文件要一个一个的去找,要时间。大家应该可以理解
可不能让ie假死啊,这就看着不爽了
Dim i
Dim bl
Dim tp
bl = UBound(Bytes) + 1 '因为rseponseBody返回的类型是SafeArray,即vbArray + vbByte,所以可以用UBound() + 1来获取长度,UBound比LenB快,测试百度mp3的responseBody,10000次LenB耗时125毫秒,而10000次UBound是0毫秒
tp = ""
For i = 1 To bl '为什么要把长度作为变量,应该非常清楚,长度越长,原函数里的For i = 1 To LenB(vIn)中LenB()就越占用内存,做为变量是很必要的,不用每个循环都要LenB()一次
Dim hByte
Dim lByte
lByte = AscB(MidB(Bytes, i, 1))
If lByte < 128 Then
tp = tp & Chr(lByte)
Else
i = i + 1
hByte = AscB(MidB(Bytes, i, 1))
tp = tp & Chr((lByte * (2 ^ 8)) Or hByte) '这个变化没其他意义,就是低字节左移8位逻辑或高字节可以获得高低字节值,是否比原函数的快,就没测过了
End If
Next
BytesToString = tp
End Function
学习
具體的上次,可以看梅花樹的測試 數組與字符串,速度太多了.
Function bytes2BSTR(vIn)
Dim strReturn()
j=LenB(vIn)
ReDim strReturn(j+1)
For i = 1 To j
ThisCharCode = AscB(MidB(vIn,i,1))
If ThisCharCode < &H80 Then
strReturn(i) = Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn(i) = Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
i = i + 1
End If
Next
bytes2BSTR = Join(strReturn,"")
End Function
2,bytes2BSTR用ADODB.Stream
3,怕假死可以用参数如1.html?page=1