程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB綜合教程 >> 用VB創建臨時文件

用VB創建臨時文件

編輯:VB綜合教程

  在Visual Basic中開發應用程序時,可能會需要在磁盤上創建一 個臨時目錄或文件,本文介紹如何在Visual Basic 4.0中創建臨時文 件。

  使用GetTempFileName函數

  Windows API函數中的GetTempFileName函數可以用來在指定的磁 盤驅動器上創建一個新的文件。盡管所創建的文件是一個臨時文件, 但不再需要它的時候,程序員還是需要將它從磁盤上物理地刪除掉。

  要在VB中使用GetTempFileName函數,必須將如下聲明語句包含在 程序中(請注意該聲明語句需要書寫在一行內):

  Private Declare Function GetTempFileName Lib"kernel32" A lias"GetTempFile NameA" (ByVal lpszPath As String, ByVal lpP refixString As String, ByVal wUni que As Long, ByVal lpTempF ileName As String) As Long

  該GetTempFileName函數需要4個參數:

  第一個參數是希望創建新文件的驅動器和/或路徑的名稱,在下面 的樣例程序中,新文件創建在驅動器C的根目錄下。

  第二個參數是指派給文件名稱的前綴。如果將該前綴指定為"TES T",則函數將把創建的新文件名稱的前四個字符設置為"TEST",即"TES T*.TMP"。

  第三個參數應該被設置為0,告訴該函數為文件名稱自動產生隨機 號碼。該隨機號碼會被添加到前綴字符的後面,以產生一個獨特而且 完整的文件名稱。

  第四個參數是一個字符串緩存,它至少要有256個字符的長度,以 存放臨時文件的名稱。

  在調用該函數之後,新文件創建在指定的磁盤上。這裡重申一下, 當退出應用程序時,必須物理地將該文件從磁盤上刪除。

  樣例程序

  該程序顯示了如何在VB應用程序中創建一個臨時文件。

  1.在Visual Basic中開始一個新的工程,采用缺省的方法建立For m1。

  2.將如下聲明語句添加到Form1的通用聲明部分中(請注意該聲明 語句需要被書寫在一行內):

  Private Declare Function GetTempFileName Lib"kernel32" A lias"GetTempFile NameA"(ByVal lpszPath As String, ByVal lpPr efixString As String, ByVal wUniq ue As Long, ByVal lpTempFi leName As String) As Long

  3.將如下代碼添加到Form1的Form_Load事件中:

  Private Sub Form_Load()

  Text1.TEXT = ""

  End Sub

  4.在Form1上添加一個文本框控件,采用缺省的方法建立Text1。

  5.在Form1上添加一個命令按鈕控件,采 筆〉姆椒ń立Comman d1。

  6.將如下代碼添加到Command1的單擊事件中:

  

  Private Sub Command1_Click()
  
        Dim FilePrefix As String
  
        Dim NewFile As String * 256
  
        FilePrefix = "TEST"
  
        NewFile = GetTempName(FilePrefix)
  
        Text1.TEXT = NewFile
  
        End Sub

  7.創建一個新的名為GetTempName的函數,將如下代碼添加到該函 數中:

  

  Private Function GetTempName(TmpFilePrefix As String) As String
   
        Dim TempFileName As String * 256
   
        Dim X As Long
   
        Dim DriveName As String
   
        DriveName = "c:"
   
        X = GetTempFileName(DriveName, TmpFilePrefix, 0, TempFi leName)
  
        GetTempName = Left$(TempFileName, InStr(TempFileName, Ch r(0)) - 1)
  
        End Function

  按下F5鍵,執行本樣例程序。單擊命令按鈕,在驅動器C的根目錄 下創建一個新的臨時文件。該新創建的文件的名稱被顯示在文本框控 件中

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved