重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
vb.net:
成都创新互联公司公司2013年成立,公司自成立以来始终致力于为企业提供官网建设、移动互联网业务开发(成都小程序开发、手机网站建设、重庆App定制开发等),并且包含互联网基础服务(域名、主机服务、企业邮箱、网络营销等)应用服务;以先进完善的建站体系及不断开拓创新的精神理念,帮助企业客户实现互联网业务,严格把控项目进度与质量监控加上过硬的技术实力获得客户的一致赞誉。
Dim
path
=
System.IO.Directory.GetFiles("D:\Log\abc",
"*.txt",
SearchOption.AllDirectories):搜索该路径下的所有txt类型的目录及子目录
path.AddRange(path)
Dim
_RecordInfo
As
String
Dim
_Reader
As
StreamReader
_Reader
=
New
StreamReader(file,
System.Text.Encoding.Default):'以Default编码的形式读取file文件(文件写入的编码要与读取的编码一致)
解压密码:1299
假设路径为C:\abc
代码:
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim Files As ObjectModel.ReadOnlyCollection(Of String) = My.Computer.FileSystem.GetFiles("C:\abc")
Dim FileSize As Long, FileName As String = Nothing
Dim oFileSize As Long
For Each File As String In Files
oFileSize = My.Computer.FileSystem.GetFileInfo(File).Length
If oFileSize FileSize Then
FileSize = oFileSize
FileName = File
End If
Next
Dim ListN As ListViewItem = New ListViewItem(My.Computer.FileSystem.GetName(FileName))
ListN.SubItems.Add(oFileSize " byte")
ListN.SubItems.Add(My.Computer.FileSystem.GetFileInfo(FileName).Extension " 文件")
ListN.SubItems.Add(FileName)
ListView1.Items.Add(ListN)
End Sub
End Class
详见源代码!!
这段代码的问题是:
首先for each循环在files里查找文件对象,但是f变量声明为string了,无法让它获取对象;
然后file.copy的变量file没有任何声明,也没有初始化赋值等;
最后,整个for each循环里查找集合files的文件,由于初始化的循环计数器仍然按照最初设定的文件数目向后递增(文件地址),但是实际文件删除一部分,后续的文件位置就不能跟循环计数指针匹配了,所以默认为查找不到文件,将会报错。一般的做法时把复制和删除分别放在2次循环里,第一次只复制文件,第二次才去删除。