用mid$命令超速字符串添加操作
大家都知道,&操作符的执行速度是相当慢的,特别是处理长字符串时。当必须重复地在同一变量上附加字符时,有一个基于mid$命令的技巧可以使用。基本思路就是:预留一个足够长的空间存放操作的结果。下面是应用这个技术的一个例子。
假设要建立一个字符串,它要附加从1开始的10000个整数:"1 2 3 4 5 6 7 ... 9999
10000"。下面是最简单的实现代码:
res = ""
for i = 1 to 10000: res = res & str(i): next
<>
face=宋体>代码虽然简单,但问题也很明显:res变量将被重分配10000次。下面的代码实现同样的目的,但效果明显好转:
dim res as string
dim i as long
dim index as long
’预留足够长的缓冲空间
res = space(90000)
’指针变量,指出在哪里插入字符串
index = 1
’循环开始
for i = 1 to 10000
substr = str(i)
length = len(substr)
’填充字符串的相应区间段数值
mid$(res, index, length) = substr
’调整指针变量
index = index + length
next
’删除多余字符
res = left$(res, index - 1)
测试表明:在一个333mhz的计算机上,前段代码执行时间为2.2秒,后者仅仅为0.08秒!代码虽然长了些,可是速度却提高了25倍之多。呵呵,由此看来:代码也不可貌相啊
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器