Para los diseñadores de sitios web, es inevitable procesar grandes cantidades de archivos de vez en cuando, especialmente imágenes y algunos archivos de texto, que se procesan con frecuencia. Debido a la gran cantidad de archivos en el sitio web, los archivos del mismo tipo a menudo se nombran usando números crecientes con ciertas reglas. Por ejemplo, nuestros archivos de imágenes comunes a menudo se denominan 1001.jpg, 1002. La ventaja del método jpg es que. Los nombres de los archivos no se repetirán y es fácil de administrar. Aquí, presentamos específicamente un método simple y fácil para cambiar el nombre de todos los archivos en cualquier carpeta por lotes. Por supuesto, los nombres de los archivos después de cambiar el nombre se incrementan numéricamente según las necesidades del diseñador del sitio web.
Usamos ASP para implementar las funciones anteriores. Cabe señalar que debido a que el diseño implica operaciones de archivos y utiliza el objeto FileSystemObject, la implementación de esta función debe realizarse en un sitio web con permisos de operación de archivos. Atención virtual general: considerando los requisitos de seguridad, es posible que no se otorguen permisos de existencia de archivos. Esto es lo primero a lo que debemos prestar atención. Además, en el siguiente programa, operaremos todos los archivos en la carpeta especificada strFromDir, siempre que; es este archivo Independientemente del tipo de archivo, el programa cambiará el nombre de los archivos en la carpeta. Por supuesto, el tipo de archivo no se cambiará. Los archivos renombrados ya no se guardarán en la carpeta original, sino que se moverán a una. nueva carpeta. strTargetDir, tenga en cuenta que nos estamos moviendo aquí, no copiando, por lo que después de la operación, todos los archivos en la carpeta original ya no existirán, el programa hace un buen uso de varias propiedades y características proporcionadas por el objeto FileSystemObject; fácil de implementar Obviamente, los amigos que programan en otros idiomas pueden sentirse profundamente ahora, veamos el código de implementación de la función:
<% @LANGUAGE = VBSCRIPT %>.
<%Opción Explícita%>
<%
'El siguiente programa cambia el nombre de los archivos en una carpeta en lotes y mueve todos los archivos a una nueva carpeta;
Respuesta.Escribir "<html>" & VbCrLf & "<head>" & VbCrLf
Response.Write "<título>Cambio de nombre de archivo por lotes</título>" & VbCrLf
Respuesta.Escribir "</head>" & VbCrLf & "<body>" & VbCrLf
'Descripción de la variable
Dim gbolGoProcedimiento
Dim strFromDir 'Carpeta de origen
Dim strTargetDir 'Carpeta de destino
objeto oscuro FS
Dim objRootFolder
Archivo obj tenue
Dim strFileNameLen
Dim strPrevFileName
Dim strFileExt 'Extensión de archivo
Dim strFileNameCount
Dim strNuevoNombreArchivo
Dim strRealCount 'Número de archivos procesados
gbolGoProcedure = False
'Si se hace clic en el botón de inicio, realice el siguiente procesamiento
Si (Request.Form("GoButton")) = "Inicio", entonces
'Especifique la carpeta de origen y la carpeta de destino
strFromDir = "D:test"
strTargetDir = "D:test1"
' Establece el número de archivos que se procesarán en 0
strRealCount = 0
Establece objFS = Server.CreateObject("Scripting.FileSystemObject")
Establece objRootFolder = objFS.GetFolder(strTargetDir)
'La configuración específica del nombre del archivo, establecida aquí en 100001, indica que el nombre del archivo se cambiará de 100001
'Comience, aumente gradualmente y se puede configurar según sea necesario;
strFileNameCount = 100001
Para cada objFile en objRootFolder.Files
'Para archivos específicos, no se realizará ningún procesamiento y se pueden configurar según sea necesario;
Si objFile.Name = "Thumbs.db" entonces strFileNameCount = StrFileNameCount - 1
strFileNameCount = strFileNameCount + 1
Siguiente
Establecer objRootFolder = objFS.GetFolder(strFromDir)
Para cada objFile en objRootFolder.Files
strFileNameLen = Len (objFile.Name)
Si Mid (objFile.Name,(strFileNameLen - 3),1) = "."
strFileExt = derecha(objFile.Name, 4)
Demás
strFileExt = derecha(objFile.Name, 5)
Finalizar si
strPrevFileName = objFile.Name
strNewFileName = strFileNameCount & strFileExt
objFile.Move strTargetDir & strNewFileName
Response.Write "Archivo fuente: " &strFromDir&strPrevFileName & " > Mover y renombrar: " &strTargetDir& strNewFileName & "<br>" & vbCrLF
strFileNameCount = strFileNameCount + 1
strRealCount = strRealCount + 1
Siguiente
respuesta. Escriba "<p><b> Procesado en total: " & (strRealCount) & " files</B>" & vbCrLf
Establezca objRootFolder = Nada
Establecer objFS = Nada
gbolGoProcedure = Verdadero
Fin si
gbolGoProcedure Entonces
Response.Write("<p><b>Movimiento de archivos por lotes y cambio de nombre</b>") & vbCrLf
Else
Response.Write("<centro><br><método de formulario=""post"" action=""FileNameConverter.asp"" ID=form1 nombre=""form1"">") & vbCrLf
Response.Write("<tipo de entrada=""SUBMIT"" valor="" Inicio"" ID=""GoButton"" nombre=""GoButton"">") & vbCrLf
Respuesta.Write("</formulario>") y vbCrLf
Response.Write("<p><b>Haga clic en el botón para mover por lotes y cambiar el nombre de los archivos</b></center>") & VbCrLf
Finalice si
la respuesta. Escriba "</body>" & VbCrLf & "</html>"
%>