经过长时间的运用VB.NET编程,在工作中也积累了一些经验,在这里主要和大家介绍如何创建VB.NET临时文件。
使用GetTempFileName函数
#T#WindowsAPI函数中的GetTempFileName函数可以用来在指定的磁盘驱动器上创建一个新的文件。尽管所创建的文件是一个临时文件,但不再需要它的时候,程序员还是需要将它从磁盘上物理地删除掉。
要在VB中使用GetTempFileName函数,必须将如下声明语句包含在程序中(请注意该声明语句需要书写在一行内):
- PrivateDeclareFunctionGetTempFileNameLib"kernel32"Alias"GetTempFileNameA"(ByVallpszPathAsString,ByVallpPrefixStringAsString,
- ByValwUniqueAsLong,ByVallpTempFileNameAsString)AsLong
该GetTempFileName函数需要4个参数:
***个参数是希望创建新文件的驱动器和/或路径的名称,在下面的样例程序中,新文件创建在驱动器C的根目录下。
第二个参数是指派给文件名称的前缀。如果将该前缀指定为"TEST",则函数将把创建的新文件名称的前四个字符设置为"TEST",即"TEST*.TMP"。
第三个参数应该被设置为0,告诉该函数为文件名称自动产生随机号码。该随机号码会被添加到前缀字符的后面,以产生一个独特而且完整的文件名称。
第四个参数是一个字符串缓存,它至少要有256个字符的长度,以存放临时文件的名称。
在调用该函数之后,新文件创建在指定的磁盘上。这里重申一下,当退出应用程序时,必须物理地将该文件从磁盘上删除,样例程序。
该程序显示了如何创建VB.NET临时文件
1.在VisualBasic中开始一个新的工程,采用缺省的方法建立Form1。
2.将如下声明语句添加到Form1的通用声明部分中(请注意该声明语句需要被书写在一行内):
- PrivateDeclareFunctionGetTempFileNameLib"kernel32"Alias"GetTempFileNameA"
- (ByVallpszPathAsString,ByVallpPrefixStringAsString,ByValwUniqueAsLong,ByVallpTempFileNameAsString)AsLong
3.将如下代码添加到Form1的Form_Load事件中:
- PrivateSubForm_Load()
- Text1.TEXT=""
- EndSub
4.在Form1上添加一个文本框控件,采用缺省的方法建立Text1。
5.在Form1上添加一个命令按钮控件,采笔〉姆椒ńommand1。
6.将如下代码添加到Command1的单击事件中:
- PrivateSubCommand1_Click()
- DimFilePrefixAsString
- DimNewFileAsString*256
- FilePrefix="TEST"
- NewFile=GetTempName(FilePrefix)
- Text1.TEXT=NewFile
- EndSub
7.创建一个新的名为GetTempName的函数,将如下代码添加到该函数中:
- PrivateFunctionGetTempName(TmpFilePrefixAsString)AsString
- DimTempFileNameAsString*256
- DimXAsLong
- DimDriveNameAsString
- DriveName="c:"
- X=GetTempFileName(DriveName,TmpFilePrefix,0,TempFileName)
- GetTempName=Left$(TempFileName,InStr(TempFileName,Chr(0))-1)
- EndFunction
按下F5键,执行本样例程序。单击命令按钮,在驱动器C的根目录下创建一个新的临时文件。该新创建的文件的名称被显示在文本框控件中,以上就是如何创建VB.NET临时文件的过程,大家学会了吗?