小工具:计算当前文件夹中,有多少行JS代码和ASP代码,并且还可统计代码有多少字节

王朝html/css/js·作者佚名  2006-12-17
宽屏版  字体: |||超大  

小工具:计算当前文件夹中,有多少行JS代码和ASP代码,并且还可统计代码有多少字节

小工具:计算当前文件夹中,有多少行JS代码和ASP代码,并且还可统计代码有多少字节 计算当前文件夹中,有多少行JS代码和ASP代码,并且还可统计代码有多少字节

有示例代码

<%

'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'\'\\ 来自 codeproject.com

'\\ 计算js和asp代码

'\\ 修改 bluedestiny

'\\ mail:bluedestiny at 126.com

'\'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\option explicit

response.buffer=false

class COUNT_CODE

private fso,spath

private asplines, jslines, aspbytes, jsbytes, aspwords

private sub class_initialize

set fso = createobject('scripting.filesystemobject')

end sub

private sub class_terminate

set fso=nothing

end sub

private function iterate(path)

dim folder, folders, files, file, ts, txt, arr, f

set folder = fso.getfolder(path)

set files = folder.files

dim rx, c

set rx = new regexp

rx.ignorecase = true

rx.global = true

rx.pattern = ' +'

for each file in files

if right(file.name,4)='.asp' or right(file.name,3)='.js' then

set ts = file.openastextstream

if ts.atendofstream then txt = '' else txt = ts.readall

ts.close

txt = rx.replace(txt,' ')

txt = replace(txt,vbcrlf&vbcrlf,vbcrlf)

arr = split(replace(txt,vbcrlf,' '),' ')

aspwords = aspwords + ubound(arr)

arr = split(txt,vbcrlf)

if right(file.name,4)='.asp' then

asplines = asplines + ubound(arr)

aspbytes = aspbytes + len(txt)

else

jslines = jslines + ubound(arr)

jsbytes = jsbytes + len(txt)

end if

end if

next

set folders = folder.subfolders

for each f in folders

iterate f.path

next

end function

public property let path(s)

spath=server.mappath(s)

end property

public sub count

iterate(spath)

end sub

public sub printf

response.write 'ASP:' & '<br/>'

response.write 'Total Lines Coded: ' & asplines & '<br/>'

response.write 'Total Bytes: ' & aspbytes & '' & '<br/>'

response.write 'Total Individual Elements (words) Typed: ' & aspwords & '<br/>'

response.write 'JScript:' & '<br/>'

response.write 'Total Lines Coded: ' & jslines & '<br/>'

response.write 'Total Bytes: ' & jsbytes

end sub

end class

'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'\\示例代码

'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\dim o

set o=new COUNT_CODE

o.path='bluedestiny/'

o.count

o.printf

%>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有