ASP教程之谈谈我对截取必定长度字符串的一点心得...
ASP在国内异常流行,因为国内大多使用的是盗版的Windows和盗版的SQLServer,而ASP+COM+SQLServer实际上也是一种不错的搭配,其性能也不输于PHP+MYSQL,特别是Windows系统和SQLServer都有图形界面,比APACHE和MYSQL易于维护,因此对于不重视知识产权的国家来说也是一种不错的选择。心得|字符串vbs和js都供应了截取必定长度的字符串的函数,但有一个成绩是这些函数都将中笔墨符视为1个字节,而不是一般的2个字节,假如这些输出的数据要提交到数据库中的话,极可能这些数据的真正长度回覆与数据库中该字段所同意的最年夜长度,因而就堕落了。最入手下手我不会如许做,看了cheery_ke兄宣布的帖子
http://www.dev-club.com/club/bbs/showAnnounce.asp?id=1227955
后才晓得该怎样做。详细程序是
--------------------*****START*****--------------------
FUNCTIONstrLeft(str,num)
DIMp_str,p_num
p_str=""
p_num=0界说变量,标志中文为2字节时的实践字符数
IFTRIM(str)""THEN
FORi=1TOnum
IFasc(mid(str,i,1))>255ORASC(mid(str,i,1))<0THEN判别下一个欲取的字符所占字节数
p_num=p_num+2
Else
p_num=p_num+1
EndIF
IFp_num>numTHENEXITFOR
NEXT
p_str=Left(str,i-1)把i-1交换为i,则发生与“申明”中相反的情形。
ENDIF
strLeft=p_str
ENDFUNCTION
--------------------******END******--------------------
但是在实践利用中发明cheery_ke兄供应的程序有些成绩:假如提交的字符串字数少于所同意的最年夜字数则程序报告错,缘故原由是FOR轮回处的轮回次数年夜于字符串的实践长度,招致下一句中mid函数的参数i年夜于字符串的长度,呈现毛病。
我针对这个程序作了以下改善:
functionstrLeft(str,num)
dimp_str,p_num
p_str=""
p_num=0
iftrim(str)""then
p_len=len(str)
fori=1top_len
ifasc(mid(str,i,1))>255orasc(mid(str,i,1))<0then
p_num=p_num+2
else
p_num=p_num+1
endif
ifp_num>numthen
p_str=Left(str,i-1)
exitfor
else
p_str=str
endif
next
endif
strLeft=p_str
endfunction
如许就不会呈现谁人成绩了。
跋文:我写这篇文章不是为了经由过程指出别人的毛病来举高本人,我只是个进修asp没多久的freshman,并且在这个论坛也失掉过cheery_ke兄的匡助,我是很感谢和佩服他的。指出这个成绩是为了一些像我如许的菜鸟在碰到这个成绩的时分能少绕些弯路,并且本人在这个论坛学了这个多器材却一向无以报答,深感歉疚,因而写下本人的一点心得举动当作本人的一番情意,至因而否见笑于人就不得而知了。</p>缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍 先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习 Session:这个存储跟客户端会话过程的数据,默认20分钟失效 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点: 下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。 Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。 它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
页:
[1]