• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Visual Basic文件系統操作一覽

    發布: 2007-7-14 20:28 | 作者: 佚名    | 來源: 網絡轉載     | 查看: 16次 | 進入軟件測試論壇討論

    領測軟件測試網 VB是現在比較流行的一種語言,相關的書籍也非常多,因此在這里也就沒有必要介紹基礎的內容了(如果非要,那你就去買本VB入門的書吧)。在編程的過程中我們經常會用到對文件系統的操作,下面是我在實際應用中(或在網上收集)的相關技巧(大部分是 API 技巧),經過仔細的整理后,希望對大家學習提高VB編程有幫助。

      讀取 Windows 所在目錄

      API函數:GetWindowsDirectory Private Declare Function GetWindowsDirectory Lib″kernel32″ Alias ″GetWindowsDirectoryA″(ByVal lpBuffer As String, ByVal nSize As Long) As Long

      Const MAX-PATH = 260

      ′定義足夠長的字符串

      Sub GetWinDir()′定義函數

      Dim S As String, Length As Long  

      S = String(MAX-PATH, 0)′賦值

      Length=GetWindowsDirectory(S, MAX-PATH)

      ′S為取得目錄,MAX-PATH 為長度

      S = Left(S, InStr(S, Chr(0)) - 1)

      ′去掉多余的空格

      MsgBox ″Windows 路徑=″ & S,″Win 目錄″

      End Sub

      補充:S 和 MAX-PATH 的值是可以隨便賦的,

      如:Dim S as String *20

      Length = GetWindowsDirectory(S,20)

      不過,這兩個的值,一定要夠大(一定要大于系統的 Windows 的目錄的字符數),不然就不能正常運行。

      讀取Windows\System 的所在目錄

      API 函數:GetSystemDirectory

      Private Declare Function GetSystemDirectory Lib ″kernel32″ Alias ″GetSystemDirectoryA″(ByVal lpBuffer As String, ByVal nSize As Long) As Long

      大家注意這個 API 函數和一個的用法完全一樣,只是把相應的位置做一個修改就行了,因此這里就不在多講了。

      復制整個目錄

      (包含子目錄及其所有文件)

      假設我們想把″c:\vb″目錄下的所有文件(包含其子目錄)復制到″d:\vb″目錄下。

      程序代碼如下:

      Dim SHFileOp As SHFILEOPSTRUCT

      SHFileOp.wFunc = FO-COPY′拷貝

      SHFileOp.pFrom = ″c:\vb*.*″

      ′也可以指定成 ″c:\vb″

      SHFileOp.pTO=″d:\vb″′目標目錄

      SHFileOp.fFlags = FOF-ALLOWUNDO+FOF-NOCONFIRMMKDIR

      ′在復制文件時若需要建立目錄,不預先征詢使用者即直接建立

      SHFileOperation SHFileOp′執行

      讀取磁盤的空間及可用空間

      API 函數:GetDiskFreeSpace

      Private Declare Function GetDiskFreeSpace Lib ″kernel32″ Alias ″GetDiskFreeSpaceA″ (ByVal lpRootPathName As String, lpSectorsPerCluster As Long, lpBytesPerSector As Long, lpNumberOfFreeClusters As Long, lpTtoalNumberOfClusters As Long) As Long

      參數說明:

      lpRootPathName:驅動器根目錄,以 C 盤為例,必須寫成″C:\″,不可以寫成″C:″或″C″。

      lpSectorsPerCluste:每一簇的扇區數。

      lpBytesPerSector:每一扇區的字節數。

      lpNumberOfFreeClusters :可用的簇數。

      lpTtoalNumberOfClusters:總簇數。

      示例:

      Dim Sectors As Long, Bytes As Long, Free As Long, Total As Long, FreeMB As Long, TotalMB As Long, WisMB As Long

      GetDiskFreeSpace ″c:\ ″, Sectors, Bytes, Free, Total

      FreeMB = Bytes * Sectors * Free \ 1024 \ 1024

      ′可用空間,以 MB 為單位

      TotalMB = Bytes * Sectors * Total \ 1024 \ 1024

      ′總空間,以 MB 為單位

      WisMB = TotalMB - FreeMB

      ′已用空間,以 MB 為單位

      (VB愛好者樂園http://www.d1vb.com)

      編注:

      API是應用程序編程接口 (Application Program Interface) 的縮寫,這是一組供應用程序使用的命令,用以向計算機的操作系統請求或執行更低級的設備訪問操作。 

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>