手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Asp编程>列表

统计有多少行JS代码和ASP代码,并有多少字节

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
计算当前文件夹中,有多少行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
%>

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!