我想使用streamreader和writer类将文件从一个目录传输到另一个目录。现在我想添加一个状态栏来显示状态栏上的文件名以及剩余的百分比。当文件移动到新目录时,它将达到100。有什么建议吗?
Dim ioFile As New System.IO.StreamReader("C:\sample.csv")
Dim ioLine As String
Dim ioLines As String
ioLine = ioFile.ReadLine
ioLines = ioLine
While Not ioLine = ""
ioLine = ioFile.ReadLine
ioLines = ioLines & vbCrLf & ioLine
End While
Dim ioWriter As New System.IO.StreamWriter("C:\new.csv")
ioWriter.WriteLine(ioLines)
ioFile.Close()
ioWriter.Close()
答案 0 :(得分:1)
试试这个
' Copy the file to a new folder, overwriting existing file.
My.Computer.FileSystem.CopyFile( _
"C:\UserFiles\TestFiles\testFile.txt", _
"C:\UserFiles\TestFiles2\testFile.txt", _
FileIO.UIOption.AllDialogs, _
FileIO.UICancelOption.DoNothing)
My.Computer.FileSystem.CopyFile 方法允许您复制文件。它的 参数提供了能力 覆盖现有文件,重命名 文件,显示进度 操作,并允许用户 取消操作
答案 1 :(得分:1)
Saif Kahn是对的,如果您只是复制文件,那么只需复制一个文件。但是要回答你的问题,这里有一个进度条:
Dim tmpLines() as String = File.ReadAllLines("c:\sample.csv")
ProgressBar1.Maximum = tmpLines.Count - 1
ProgressBar1.Value = 0
For tmpRun As Integer = 0 To tmpLines.Count - 1
ProgressBar1.Value += 1
'Copy Stuff
Next