十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
先imports
成都创新互联-专业网站定制、快速模板网站建设、高性价比威信网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式威信网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖威信地区。费用合理售后完善,十余年实体公司更值得信赖。
system.runtime.interopservices
然后class
xxxx
public
shared
function
zlibversion()
as
string
end
function...'在里面调用zlibversion()即可调用zlib1.dll的zlibversion方法,其他dll你根据接口灵活定义好了end
class
API函数 PathFileExists
声明
Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
PathFileExists("一个文件或文件夹") 如果存在 返回1 不存在返回0
If PathFileExists("C:\123") then ...
Dir不准确
如果有下列目录结构
D盘中有文件夹 test 文件夹中有testFile.txt文件
还有空文件夹 testEmpty
则
Dir("d:\test\testFIie.txt") 返回 testFile.txt
Dir("d:\test\testFIie11111111.txt") 返回 ""
Dir("d:\test\") 返回 testFile.txt (返回此文件夹第一个文件)
Dir("d:\testEmpty") 返回空
dir("一个不存在的文件夹")返回空
也就是说如果一个文件夹下没有文件(不管有没有子文件夹)则 dir("一个文件夹")就返回空
所以不能通过 dir("一个文件夹")来判断一个文件夹是否存在。
只能调用api函数
Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
PathFileExists("一个文件或文件夹") 如果存在 返回1 不存在返回0
首先我们得判断文件/目录是否存在然后获取文件信息(创建时间)。有文件的获取时间了,就可以知道这个文件的创建时间,就能判断目录的文件是什么时候增加的,那么离自己最近的时间创建的的文件就是目录的增加文件了。
判断文件/目录是否存在
Try ' 先判断文件是否存在。 If Not File.Exists(TextBox4.Text) Then
File.CreateText(TextBox4.Text) '单纯创建文件一般不常用,正常情况下是创建文件然后进行读写操作
'System.IO.File.Create(TextBox4.Text) End If
Catch ex As Exception
MessageBox.Show(ex.Message)
Exit Sub
End Try
获取文件信息(创建时间) FileDateTime(fii(i).FullName) File.GetCreationTime(path)
System.IO.File.Create(Path)'创建文件
System.IO.File.CreateText(Path)'创建文件
System.IO.File.Copy(Path,targetPath) '复制到新位置,不允许覆盖现有文件 也可以'FileCopy(TextBox4.Text, "C:" "\" file_name(UBound(file_name))) System.IO.File.Move(SourceFileName, DestFileName)
System.IO.File.Delete(Path)
'追加 System.IO.File.AppendText'替换
System.IO.File.Replace
脱离具体的环境谈并没有任何意义,所以如果当前电脑上存在此文件就是文件,存在此文件夹则为文件夹,否则什么也不是。
'Imports System.IO
Dim s As String = "C:\1.txt"
If File.Exists(s) Then
MessageBox.Show("文件")
ElseIf Directory.Exists(s) Then
MessageBox.Show("路径")
Else
MessageBox.Show("什么都不是")
End If
判断和创建可以放在一起。
创建空文件夹:
Directory.CreateDirectory(文件夹完整路径)
'系统会自动判断文件夹是否存在,不存在就创建判断并创建空文件:
Using fs As New FileStream("f.txt", FileMode.OpenOrCreate)
'你可以用这个FileStream做其它事情
End Using
'通过过System.IO.DirectoryInfo对象可以查阅目录信息,下面是遍历一个文件夹下所有层次的子文件夹,如果只检查下一层目录就更简单了。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim folder = New System.IO.DirectoryInfo("D:\Documents")
Dim items = getemptyfolder(folder)
For Each item In items
Console.WriteLine(item.FullName)
Next
End Sub
Function getemptyfolder(ByVal folder As System.IO.DirectoryInfo) As System.IO.DirectoryInfo()
Dim items As New List(Of System.IO.DirectoryInfo)
If folder.EnumerateFiles().Count = 0 Then
items.Add(folder)
End If
Dim subfolders = folder.EnumerateDirectories()
For Each subfolder In subfolders
items.AddRange(getemptyfolder(subfolder)) '查询树形目录结构类型数据用递归法实现
Next
Return items.ToArray()
End Function
'还是学c#语言吧,我发觉同样一个数组,c#功能多的多,vb.net没几条方法可用。