Some useful VBScripts to manipulate the FileSystemObject
来源:互联网 发布:淘宝林俊杰国际歌友会 编辑:程序博客网 时间:2024/04/30 21:12
SomeTimes we need to query,update ot delete the FileSystemObjects During the Applation Installation and Development. Those scripts is a sort of way to manipulate them.
Function CopySingleFile(SourceFile,DestFile)
ON ERROR RESUME NEXT
Dim objFSO
Set objFSO = CreateObject("Scripting.FileSystemObject")
if (objFSO.FileExists(SourceFile)) then
objFSO.CopyFile(SourceFile,DestFile,True)
else
msgbox "The source file does not exist: " & SourceFile
End if
Set objFSO = Nothing
End Function
Function DeleteSingleFile(FullPathFile)
ON ERROR RESUME NEXT
Dim objFSO
set objFSO=CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(FullPathFile) then
objFSO.DeleteFile(FullPathFile)
End if
Set objFSO = Nothing
End Function
Function MoveSingleFile(SourceFile,DestFile)
ON ERROR RESUME NEXT
Dim objFSO
SET objFSO = CreateObject("Script.FileSystemObject")
If objFSO.FileExists(SourceFile) then
objFSO.MoveFile(SourceFile,DestFile)
End if
Set objFSO = Nothing
End Function
Function RenameFile(FullPathFile,OldName,NewName)
ON ERROR RESUME NEXT
Dim objFSO
set objFSO = CreateObject("Script.FileSystemObject")
If objFSO.FileExists(FullPathFile) then
objFSO.MoveFile(FullPathFile,Left(FullPathFile,Len(FullPathFile)-Len(OldName)) & NewName)
End if
Set objFSO = Nothing
End Function
Function RemoveReadOnlyForFile(DestFile)
ON ERROR RESUME NEXT
Const ReadOnly=1
Dim objFSO
Set objFSO = CreateObject("Scripting.FileSystemObject")
Dim objFile
If objFSO.FileExists(DestFile) then
set objFile=objFSO.GetFile(DestFile)
If objFile.Attributes AND ReadOnly then
objFile.Attributes=objFile.Attributes XOR ReadOnly
End if
End if
Set objFSO = Nothing
End Function
Function CreateTextFile(DestFile)
ON ERROR RESUME NEXT
Dim objFSO
SET objFSO=CreateObject(Scripting.FileSystemObject)
If not objFSO.FileExists(DestFile) then
objFSO.CreateTextFile(DestFile)
End if
Set objFSO = Nothing
End Function
Function ReadTargetFile(ReadType,TypeFlag,DestFile)'
'ReadyType can be read(x)读x个字符;readline读一行;readall全部读取
ON ERROR RESUME NEXT
Const ForReading=1
Const ForAppEnding=8
Const ForWriting=2
ReadType=UCase(ReadType)
Dim objFSO
SET objFSO=CreateObject(Scripting.FileSystemObject)
Dim objFile
If objFSO.FileExists(DestFile) then
set objFile = objFSO.OpenTextFile(DestFile,ForReading,False)
Select case ReadType
Case "READX"
If IsNumeric(TypeFlag) then
ReadTargetFile=objFile.read(TypeFlag)
End if
objFile.close
Exit Function
Case "READLINE"
If IsNumeric(TypeFlag) then
dim i = 1
Do while (not objFile.atEndofstream) and i < = TypeFlag
objFile.skipline
if i = typeFlag then
ReadTargetFile=objFile.readline(TypeFlag)
End if
loop
End if
objFile.close
Exit Function
Case "READALL"
ReadTargetFile=objFile.readall
objFile.close
Exit Function
End Select
End if
Set objFSO = Nothing
End Function
Function FindStringInFile(Str,DestFile)
ON ERROR RESUME NEXT
Const ForReading=1
Const ForAppEnding=8
Const ForWriting=2
Dim objFSO
SET objFSO=CreateObject(Scripting.FileSystemObject)
Dim objFile
Set objFile=objFSO.OpenTextFile(DestFile,ForReading,False)
Dim DestString=objFile.Readall
FindStringInFile= InStr(1,DestString,Str,1)
if FindStringInFile = 0 or FindStringInFile= Null then
FindStringInFile =false
else
FindStringInFile=True
End if
Set objFile = Nothing
Set objFSO = Nothing
End Function
Function FindAndReplace(find,replacewith,filename)
ON ERROR RESUME NEXT
Const ForReading=1
Const ForAppEnding=8
Const ForWriting=2
Dim objFSO
set objFSO=CreateObject(Scripting.FileSystemObject)
Dim objFile
Set objFile=objFSO.OpenTextFile(filename,ForWriting,True)
Dim FileContent,FileContentReplaced
FileContent= objFile.Readall
FileContentReplaced=Replace(FileContent,find,replacewith,-1,1)
If FileContect <> FileContentReplaced then
objFile.Write FileContentReplaced
objFile.close
else
objFile.close
End if
Set objFile = Nothing
Set objFSO = Nothing
End Function
'----------------------------------------------------------文件夹操作---------------------------------------------------------------------------------------------------------------
Function CopyEntireFolderContents(SourceFolder,DestFolder) 'including files and subfolder contents
ON ERROR RESUME NEXT
Dim objFSO
set objFSO = CreateObject("Scripting.FileSystemobject")
If objFSO.FolderExists(SourceFolder) then
objFSO.CopyFolder(sourceFolder,DestFolder,True)
else
msgbox "The source folder does not exist: " & SourceFolder
End if
Set objFSO = Nothing
End Function
Function DeleteEntireFolder(DestFolder)
ON ERROR RESUME NEXT
dim objFSO : set objFSO = CreateObject("Scripting.FileSystemObject")
if objFSO.FolderExists((DestFolder) then
objFSO.DeteleFolder(DestFolder)
End if
Set objFSO = Nothing
End Function
Function CopyEntireFolderContentsExceptSubFolder(SourceFolder,DestFolder) 'only copy the files under source folder
ON ERROR RESUME NEXT
Dim sFile,sFiles,sFolder
Dim objFSO : SET objFSO=CreateObjects("scripting.FileSystemobject")
if objFSO.FolderExists(SourceFolder) then
If not objFSO.FolderExist(DestFolder) then
objFSO.CreateFolder(DestFolder)
End if
set sFolder=objFSO.GetFolder(SourceFolder)
set sFiles=sfolder.Files
For each sFile in sFiles
CopySingleFile(SourceFolder & "/" & sFile.Name,DestFolder & "/" & sFile.Name,True)
Next
End if
Set objFSO = Nothing
End Function
Sub EnsureDirectory(objpath)
ON ERROR RESUME NEXT
Dim iPos: iPos = 1
Set objFS = CreateObject("Scripting.FileSystemObject")
Do While (True)
iPos = InStr(iPos, objpath, "/", 1)
If iPos < 1 Then
Exit Do
End If
spath = Left(objpath, iPos)
If Not objFS.FolderExists(spath) Then
objFS.CreateFolder spath
End If
iPos = iPos + 1
Loop
objFS.CreateFolder objpath
End Sub
- Some useful VBScripts to manipulate the FileSystemObject
- Some useful tools for the Web Developer
- Shell - Some useful tips to work with Shell
- How to get the useful synonyms
- some useful links
- Some useful expressions
- some useful websit
- Some useful TextBox Validations
- some useful URL
- Some useful linux commands
- Some Useful -XX Options
- some useful code
- Some useful DQL tips
- Some useful tools
- Some useful english words
- some useful Linux commands
- some useful technology english
- Some useful Eclipse hotkey
- 设备驱动中环形缓冲区数据存储和读写同步的实现[转自:http://hi.baidu.com/whandsome/blog/item/3834e32a9994692cd52af1f9.html]
- c#线程同步中的lock,monitor,同步事件和等待句柄以及mutex的介绍
- 磁盘空间不足情况下如何给EAS打补丁
- java学习札记(15)-Scanner用法详细
- 关于嵌套循环的优化问题!
- Some useful VBScripts to manipulate the FileSystemObject
- hdu 1102
- 自动序列化,学习和实践
- JS中判断特殊字符存在
- silverlight反射
- 使用pl/sql
- oracle 表空间操作
- error LNK2001: unresolved external symbol _IID_ISimpleMath)---COM技术初探二
- WNDCLASS