日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
allfiles.vbs如何實現(xiàn)顯示文件的詳情信息-創(chuàng)新互聯(lián)

allfiles.vbs 如何實現(xiàn)顯示文件的詳情信息?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

我們提供的服務(wù)有:網(wǎng)站制作、成都網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、臨邑ssl等。為上1000+企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的臨邑網(wǎng)站制作公司

有的時候?qū)⒆幽夸浵碌乃形募男薷臅r間、大小、全限定名等信息導(dǎo)出到Excel表格中。

嘗試過命令行,但不太好用——

1.對于“dir /s >1.txt”,當(dāng)前目錄與文件列表是分開顯示的,合并起來太麻煩,而且沒有文件的全限定名。
2.對于“dir /b /s >1.txt”,只有全限定名,沒有修改時間、大小等詳細(xì)信息。
3.對于“tree /f >1.txt”,只有目錄樹,沒有修改時間、大小等詳細(xì)信息。

在網(wǎng)上找了幾個導(dǎo)出文件列表的工具,但都不太好用。于是決定自己編寫。

用什么編程工具開發(fā)呢?考慮到以后可能經(jīng)常改進(jìn)輸出內(nèi)容的格式,所以用VBScript腳本來寫是最方便的。

全部代碼如下——

' allfiles.vbs: 顯示子目錄下的所有文件的修改時間、大小、全限定名等信息。輸出文件版.
' Author: zyl910
' Blog: /tupian/20230522/zyl910
' URL: /tupian/20230522/zyl910/archive/2013/01/07/allfiles.html
' Version: V1.0
' Updata: 2013-01-07
' 
' 輸出文件是“allfiles.txt”。格式:
' Type  DateLastModified  Size  Base  Ext  FullName
' D  2013-1-1 12:30:30    Temp    C:\Temp  
' F  2013-1-1 12:30:31  34  abc  txt  C:\Temp\abc.txt
'
' Type: 類型。D目錄,F(xiàn)文件。
' DateLastModified: 最后修改時間.
' Size: 文件大小.
' Base: 文件基本名.
' Ext: 擴展名.
' FullName: 文件的全限定名.


' 取得文件擴展名和基本名.
Function GetFileExtAndBaseName(ByVal sfilename, ByRef sbasename)
  n = InStrRev(sfilename, ".")
  If n>1 Then
    GetFileExtAndBaseName = Mid(sfilename, n+1)
    sbasename = Left(sfilename, n-1)
  Else
    GetFileExtAndBaseName = ""
    sbasename = sfilename
  End If
End Function

' 遍歷該目錄及子目錄.
'
' Result: 目錄和文件的總數(shù).
' fileOut: 輸出文件,用于輸出遍歷結(jié)果.
' fso: FileSystemObject對象.
' sPath: 目錄.
Function dirscan(ByRef fileOut, ByVal fso, ByVal sPath)
  rt = 0
  Set currentFolder = Nothing
  'MsgBox sPath
  
  On Error Resume Next
  Set currentFolder = fso.GetFolder(sPath)
  On Error Goto 0
  
  If Not (currentFolder Is Nothing) Then
    ' Folders
    For Each subFolder in currentFolder.SubFolders
      sfull = subFolder.Path & "\"  ' 全限定名.
      s = "D" & vbTab & subFolder.DateLastModified & vbTab & "" & vbTab & subFolder.Name & vbTab & "" & vbTab & sfull & vbCrLf
      fileOut.write s
      rt = rt + 1
      rt = rt + dirscan(fileOut, fso, subFolder.Path)
    Next
    
    ' Files
    For Each f in currentFolder.Files
      sbase = ""
      sext = GetFileExtAndBaseName(f.Name, sbase)  ' 擴展名.
      sfull = f.Path  ' 全限定名.
      s = "F" & vbTab & f.DateLastModified & vbTab & f.Size & vbTab & sbase & vbTab & sext & vbTab & sfull & vbCrLf
      fileOut.write s
      rt = rt + 1
    Next
  End If
  
  dirscan = rt
End Function


'得到腳本文件所在的當(dāng)前目錄
Function GetCurrentFolderFullPath(fso)
  GetCurrentFolderFullPath = fso.GetParentFolderName(WScript.ScriptFullName)
End Function

' 測試
Sub dotest
  Set fso = CreateObject("Scripting.FileSystemObject")
  strpath = GetCurrentFolderFullPath(fso)  ' 得到當(dāng)前目錄.
  Set FileObj = fso.opentextfile(strpath+"\allfiles.txt", 2, True, -1)  ' 打開輸出文件. ForWriting, TristateTrue.
  s = "Type" & vbTab & "DateLastModified" & vbTab & "Size" & vbTab & "Base" & vbTab & "Ext" & vbTab & "FullName" & vbCrLf  ' 格式說明.
  FileObj.write s  ' 寫入格式說明.
  cnt = dirscan(FileObj, fso, strpath)  ' 遍歷目錄及子目錄.
  FileObj.Close  ' 關(guān)閉輸出文件.
  MsgBox "OK! " & cnt & " items.", vbOKOnly, "allfiles"
End Sub

' Run
Call dotest()

分享文章:allfiles.vbs如何實現(xiàn)顯示文件的詳情信息-創(chuàng)新互聯(lián)
新聞來源:http://www.dlmjj.cn/article/disded.html