用asp实现的代码批量修改程序
是因工作需要做的一个批量修改代码的小东西,拿出来与大家分享
目前可以处理的文件类型:. .inc .htm .html 具体类型可自行修改添加
程序实现的功能:将源目录下的文件批量修改后存到目的目录下
用它稍做修改可以实现很多东西噢!
别的不说了,代码里面都写的很清楚了
<%
// +---------------------------------------------------------------------------+
// | 程序名称: 他山之石代码批量修改器 v1.01 |
// | 他山之石版权所有,侵权必究!转载请注明版权:) |
// | ------------------------------------------------------------------------- |
// | :win2000; 编辑器:editplus; 缩进工具:tab; 缩进长度:8; 字体:宋体(10pt); |
// | ------------------------------------------------------------------------- |
// | 创建者: wyc; 创建时间: 2004-03-08; |
// | 编写者: wyc; 编写时间: 2004-03-08; |
// +---------------------------------------------------------------------------+
server.scripttimeout = 500 脚本超时时间
// +---------------------------------------------------------------------------+
// | 批量修改函数 |
// | ------------------------------------------------------------------------- |
// | 属性:path_from 源文件目录 path_to 目标文件工作目录 |
// | ------------------------------------------------------------------------- |
// | 返回值:无 |
// | ------------------------------------------------------------------------- |
// | 程序流程:...... |
// | ------------------------------------------------------------------------- |
// | 编写者:wyc; 编写时间: 2004-03-08; |
// +---------------------------------------------------------------------------+
sub midfile(path_from, path_to)
list_from = path_from 储存当前源工作目录
list_to = path_to 储存当前目标工作目录
set fso = createobject("scripting.filesystemobject")
set fold = fso.getfolder(list_from) 获取folder对象
set fc = fold.files 获取文件记录集
set mm = fold.subfolders 获取目录记录集
for each f2 in mm
set objfile = server.createobject("scripting.filesystemobject")
objfile.createfolder(path_to & "" & f2.name) 创建目录
midfile path_from & "" & f2.name, path_to & "" & f2.name 递归调用
response.write path_to & "" & f2.name & " 完毕!<br>"
next
for each f1 in fc
file_from = list_from & "" & f1.name 生成文件地址(源)
file_to = list_to & "" & f1.name 生成文件地址(到)
fileext = lcase(right(f1.name,4)) 获取文件类型
if fileext=".asp" or fileext=".inc" or fileext=".htm" or fileext="html" then 具体类型可自行修改添加
set objfile = server.createobject("scripting.filesystemobject") 定义一个服务器(读取源文件)
set out = objfile.opentextfile(file_from, 1, false, false)
content = out.readall 读取数据
out.close
// +---------------------------------------------------+
// | 文件内容处理模块(主要,其他都是文件操作) |
set regex = new regexp
regex.pattern = "(>s*
)"
regex.global = true 设置全部匹配模式
content = regex.replace(content, ">") 替换掉回车符
content = replace(content, " ", "") 作tab替换
// +---------------------------------------------------+
set objfile = server.createobject("scripting.filesystemobject") 定义一个服务器组件(写入目标文件)
set outt = objfile.createtextfile(file_to,true,false)
outt.write(content) 写入数据
outt.close
else 否则直接复制文件
set fso = createobject("scripting.filesystemobject")
fso.copyfile file_from, file_to
end if
next
end sub
midfile server.mappath("temp/aaa"), server.mappath("temp/bbb") 调用示例 源目录temp/aaa 处理后存到temp/bbb
源目录 目的目录(必须是已经存在的目录)
%>