我有一个逻辑问题,只是需要更多的大脑来解决这个问题。
For Each JobNode In JobNodes
Dim Source = JobNode.SelectNodes("Source")
For Each item As System.Xml.XmlNode In Source
Dim infoReader As System.IO.FileInfo
''''Discerns whether a file or directory
If item.InnerText.Contains(".") Then 'is a file
If Dir$(item.InnerText) <> vbNullString Then
mySize += FileLen(item.InnerText)
End If
zip.AddFile(item.InnerText, "")
Dim numFiles2 = filenames.Count
mySize = BytesTO(mySize, convTo.MB)
Console.WriteLine("...Added all " & numFiles2 & " files. Total loose file collection size is " & Math.Round(mySize, 2) & " MB")
Console.WriteLine(vbCrLf)
Else 'is a directory
zip.AddDirectory(item.InnerText, GetLastDirName(item.InnerText & " "))
Dim dinfo As New DirectoryInfo(item.InnerText)
Dim sizeOfDir As Long = DirectorySize(dinfo, True)
Dim numFiles As Integer = CountFiles_FolderAndSubFolders(item.InnerText)
Console.WriteLine("...Added all " & numFiles & " files. Total directory size is {0:N2} MB", (CDbl(sizeOfDir)) / (1024 * 1024))
Console.WriteLine(vbCrLf)
End If
Next
这是我制作的备份程序的一部分。这是确定要添加到 zip 的对象是文件(IF 语句的第一部分)还是目录(IF 语句的 ELSE 部分)的部分。
我的问题是,我正在尝试添加此代码:
Dim numFiles2 = filenames.Count
mySize = BytesTO(mySize, convTo.MB)
Console.WriteLine("...Added all " & numFiles2 & " files. Total loose file collection size is " & Math.Round(mySize, 2) & " MB")
Console.WriteLine(vbCrLf)
就在zip.AddFile(item.innertext,"")
部分之后。我想添加它,以便我可以从控制台打印信息。
问题是,如果我只是把它直接放在 之后zip.addfile()
,它每次都会直接输出上面的代码。我只希望它在完成添加所有松散文件(或使用添加的文件)后打印出该部分(正上方zip.AddFile()
)
编辑:在顶部添加 for 循环以获得更多说明