用ASP实现远程批量文件改名
作者:ffj 来源:CSDN 发布时间:2007-09-12 12:23:00
标签:批量,文件
对于网站设计者而言,时常处理大批量的文件是难免的,特别是图片和一些文本文本文件,更是经常处理。而由于网站大量文件的关系,对于同类型文件的命名,往往就直接采用带有一定规律的递增数字来作为文件名,比如,我们常见的图片文件的命名,就时常采用1001.jpg、1002.jpg这种方式,这样的好处是文件名不会重复,容易管理。这里,我们专门介绍一种简单易行的方法来实现对任意文件夹下的所有文件进行批量改名,当然,改名以后的文件名,是根据网站设计者的需要,按照数字进行递增的。
我们使用ASP来实现以上功能,需要注意的是,因为设计到文件操作,使用FileSystemObject对象,所以,该功能的实现要在具有文件操作权限的网站进行。一般的虚拟注意,考虑到安全要求,可能不会给予文件存在权限,这是我们首先需要注意的;另外,在下面的程序中,我们将操作指定文件夹strFromDir中的所有文件,只要是这个文件夹中的文件,无论文件类型如何,程序都会对其进行文件改名操作,当然,文件类型是不会进行改变的,改名以后的文件,将不在保存在原文件夹,而是移动到新的文件夹strTargetDir,注意,我们这里是移动,不是拷贝,所以,进行操作以后,原文件夹中所有的文件都将不存在;程序很好的利用了FileSystemObject对象提供的各种属性和特征,实现的时候简单明了,使用其他语言编程的朋友可能会感受深刻;现在,我们就来看功能实现代码:
<% @LANGUAGE = VBSCRIPT %>
<%Option Explicit%>
<%
’以下程序批量改名文件夹中的文件名,并将所有文件移动到新的文件夹;
Response.Write "<html>" & VbCrLf & "<head>" & VbCrLf
Response.Write "<title>批量文件改名</title>" & VbCrLf
Response.Write "</head>" & VbCrLf & "<body>" & VbCrLf
’ 变量说明
Dim gbolGoProcedure
Dim strFromDir ’源文件夹
Dim strTargetDir ’目标文件夹
Dim objFS
Dim objRootFolder
Dim objFile
Dim strFileNameLen
Dim strPrevFileName
Dim strFileExt ’文件扩展名
Dim strFileNameCount
Dim strNewFileName
Dim strRealCount ’处理的文件数量
gbolGoProcedure = False
’ 如果点击了开始按钮,进行以下处理
If (Request.Form("GoButton")) = " 开 始 " then
’ 指定源文件夹、目标文件夹
strFromDir = "D:test\"
strTargetDir = "D:\test1\"
’ 将处理文件数量设置为0
strRealCount = 0
Set objFS = Server.CreateObject("Scripting.FileSystemObject")
Set objRootFolder = objFS.GetFolder(strTargetDir)
’文件名的具体设置,这里设置为100001,表明文件名将从100001
’开始,逐步递增,可以根据需要设置;
strFileNameCount = 100001
For each objFile in objRootFolder.Files
’对于特定的文件,不进行处理,可以根据需要设置;
If objFile.Name = "Thumbs.db" then strFileNameCount = StrFileNameCount - 1
strFileNameCount = strFileNameCount + 1
Next
Set objRootFolder = objFS.GetFolder(strFromDir)
For each objFile in objRootFolder.Files
strFileNameLen = Len (objFile.Name)
If Mid (objFile.Name,(strFileNameLen - 3),1) = "." then
strFileExt = right(objFile.Name, 4)
Else
strFileExt = right(objFile.Name, 5)
End If
strPrevFileName = objFile.Name
strNewFileName = strFileNameCount & strFileExt
objFile.Move strTargetDir & strNewFileName
Response.Write "源文件: " &strFromDir&strPrevFileName & " > 移动并改名为: " &strTargetDir& strNewFileName & "<br>" & vbCrLF
strFileNameCount = strFileNameCount + 1
strRealCount = strRealCount + 1
Next
Response.Write "<p><b>一共处理: " & (strRealCount) & " 个文件</B>" & vbCrLf
Set objRootFolder = Nothing
Set objFS = Nothing
gbolGoProcedure = True
End If
If gbolGoProcedure Then
Response.Write("<p><b>批量文件批量移动和改名</b>") & vbCrLf
Else
Response.Write("<center><br><form method=""post"" action=""FileNameConverter.asp"" ID=form1 name=""form1"">") & vbCrLf
Response.Write("<input type=""SUBMIT"" value="" 开 始 "" ID=""GoButton"" name=""GoButton"">") & vbCrLf
Response.Write("</form>") & vbCrLf
Response.Write("<p><b>点击按钮对文件进行批量移动和改名</b></center>") & VbCrLf
End If
Response.Write "</body>" & VbCrLf & "</html>"
%>


猜你喜欢
- 如下所示: m_start =date +' 09:00' m_end =date +' 13:00'rsv
- 示例一:直接编写AJAX 实现。 客户端: 代码如下:<!DOCTYPE html PUBLIC &qu
- 本文实例讲述了Python解决走迷宫问题算法。分享给大家供大家参考,具体如下:问题:输入n * m 的二维数组 表示一个迷宫数字0表示障碍
- Django部署到Cenos7需要安装大量的依赖包, 有很多坑需要踩, 这里是踩坑后探索出的标准化步骤实验环境: 腾讯云centos7用ce
- 如下所示:x = file('1.txt','r')print x.tell() #显示当前光标位置x.se
- 工作中有时候需要对vgg进行定制化处理,比如有些时候需要借助于vgg的层结构,但是需要使用的是2 channels输入,等等需求,这时候可以
- 通过LogMiner实现Oracle数据同步迁移为了实现Oracle数据库之间的数据同步,网上的资料比较少的时候。最好用的Oracle数据库
- 所谓的CSV(逗号分隔值)格式是电子表格和数据库最常用的导入和导出格式。尝试使用CSV格式进行标准化描述之前已经使用了很多年。该csv模块r
- 求解列表中元素的排列和组合问题这个问题之前就遇到过几次没有太留意,最近在做题的时候遇上挺多的排列组合问题的,想来有必要温习一下了
- 问题Jupyter Notebook可以说是非常好用的小工具,但是不经过配置只能够在本机访问笔者参阅了文档对jupyter notebook
- 本机环境: Windows 10服务器环境: Windows Server 2012 R2背景:公司需要我开发一个简单的web应用。开发的时
- python 的虚拟环境可以为一个 python 项目提供独立的解释环境、依赖包等资源,既能够很好的隔离不同项目使用不同 python 版本
- 前言Matplotlib的可以把很多张图画到一个显示界面,在作对比分析的时候非常有用。对应的有plt的subplot和figure的add_
- 前言目前在做vue的项目,用到了子组件依赖其父组件的数据,进行子组件的相关请求和页面数据展示,父组件渲染需要子组件通知更新父组件的state
- 本文实例讲述了python实现中文输出的两种方法。分享给大家供大家参考。具体如下:方法一:用encode和decode如:import os
- 1.我们首先需要创建一个表CREATE TABLE IF NOT EXISTS `tp_image` ( `id` int(11
- 本文实例为大家分享了python实现图片识别汽车的具体代码,供大家参考,具体内容如下准备工作1、登陆开发者控制台2、安装 pip insta
- Access允许您在数据库表中包含附件。通过利用微软的对象链接和嵌入(OLE)技术,您可以将照片、图表、文档及其他文件存储在您的Access
- 有一个表,用户需要在后台操作它,希望能对它动态进行添加删除字段。这个功能也许没有问题,但是它原有插入与更新的两个存储过程,也需要一起修改。因
- 前言在实际工作中,我们很少会遇到一次性需要向页面中插入大量数据的情况,但是为了丰富我们的知识体系,我们有必要了解并清楚当遇到大量数据时,如何