Dim objFile As System.IO.File
站在用户的角度思考问题,与客户深入沟通,找到天河网站设计与天河网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站建设、成都网站设计、企业官网、英文网站、手机端网站、网站推广、域名注册、虚拟主机、企业邮箱。业务覆盖天河地区。
If objFile.Exists("C:\a.txt") Then
FileOpen(1, "c:\a.txt", OpenMode.Append)
Else
FileOpen(1, "c:\a.txt", OpenMode.Output)
End If
Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
这是封装在Shell32.DLL系统文件里的一个函数,既可以判断本地文件是否存在,又可以判断远程电脑上的文件是否存在。函数返回值是个Long型变量,返回两个值0,1。1表示文件存在(True),0表示文件不存在(False)。而且只有一个参数szPath,是个字符串变量,如果要判断本地的文件是否存在其路径可写为:”C:\Windows\Config\SysBook.Txt”),如果文件在远程电脑上,其路径可写为(假设对方电脑IP为192.168.0.2)
"\\192.168.0.2\d$\javatools\somefile.txt",如果其电脑名为WorkStation可写为
“\\workstation\javatools\somefile.txt",当然这个函数还可以查找网站上的网页文件如:""
我们可以写个简单的自定义公用函数来完成这个功能,在自定义函数里调用这个API函数
Public Function GetFileExists(ByVal FileName As String) As Boolean
If FileName = "" Then
MsgBox "请输入文件名", vbInformation, "提示"
Exit Function
Else
GetFileExists = CBool(PathFileExists(FileName))
End If
End Function
在窗体界面上加一按钮,和一文本框
Private Sub Command1_Click()
Dim T As Boolean
T = GetFileExists("F:\it\Develope\Retail\Bill\vssver.scc")
If T = True Then
Text1.Text = "该文件存在"
Else
Text1.Text = "该文件不存在"
End If
End Sub
当然GetFileExists其中的参数还可以写成
"\\192.168.0.2\d$\javatools\somefile.txt"
"\\workstation\javatools\somefile.txt"
""
这个函数除了能判断文件是否存在外,还可以判断本地或远程文件夹
是否存在,我觉得这要比用Dir这个VB自带函数来判断文件是否存在要好用多了,而且也不需要调用FileSystemObject组件来操作了。
判断和创建可以放在一起。
创建空文件夹:
Directory.CreateDirectory(文件夹完整路径)
'系统会自动判断文件夹是否存在,不存在就创建
判断并创建空文件:
Using fs As New FileStream("f.txt", FileMode.OpenOrCreate)
'你可以用这个FileStream做其它事情
End Using
保存文件的步骤为:
关闭流,特别是写入流
关闭并保存文件
示例代码如下:
Imports System.Windows.Forms
Imports System.IO
Imports System.Text
Sub SaveFileDemo()
'打开文件。如果文件不存在则创建新的文件
Dim myFile As New IO.FileStream("d:\data.txt", _
FileMode.OpenOrCreate, _
FileAccess.Write)
'在文件末尾添加一行
Dim tw As New StreamWriter(myFile)
myFile.Seek(0, SeekOrigin.End)
tw.WriteLine("白刃格斗英雄连英模部队方队亮相阅兵")
'关闭流
tw.Close()
'关闭文件并保存文件
myFile.Close()
End Sub
shell肯定是路径的问题,.net有自己的类库可以实现这个功能。你用
Process.Start(路径)即可解决实现