创建临时文件
2008-04-09 04:39:47来源:互联网 阅读 ()
使用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上添加一个命令按钮控件,采 笔〉姆椒ń??omman 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的根目录 下创建一个新的临时文件。该新创建的文件的名称被显示在文本框控 件中
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:编程实现将所有窗口最小化
下一篇:创建位图菜单
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash