大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这段代码的问题是:
创新互联主要从事成都网站制作、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务莱阳,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
首先for each循环在files里查找文件对象,但是f变量声明为string了,无法让它获取对象;
然后file.copy的变量file没有任何声明,也没有初始化赋值等;
最后,整个for each循环里查找集合files的文件,由于初始化的循环计数器仍然按照最初设定的文件数目向后递增(文件地址),但是实际文件删除一部分,后续的文件位置就不能跟循环计数指针匹配了,所以默认为查找不到文件,将会报错。一般的做法时把复制和删除分别放在2次循环里,第一次只复制文件,第二次才去删除。
在窗体上添加2个文本框,1个按钮:
其中1个文本框用来输入:源文件夹,另1个文本框用来输入目标文件夹
1个按钮编写代码:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim MySourceFolder As String
If Microsoft.VisualBasic.Right(TextBox1.Text, 1) = "\" Then
MySourceFolder = TextBox1.Text
Else
MySourceFolder = TextBox1.Text "\"
End If
Dim MyDestFolder As String
If Microsoft.VisualBasic.Right(TextBox2.Text, 1) = "\" Then
MyDestFolder = TextBox2.Text
Else
MyDestFolder = TextBox2.Text "\"
End If
Dim MyDir As New System.IO.DirectoryInfo(MySourceFolder)
Dim MyFiles() As System.IO.FileInfo = MyDir.GetFiles("*.txt")
For Each MyFile As System.IO.FileInfo In MyFiles
System.IO.File.Copy(MySourceFolder MyFile.Name, MyDestFolder MyFile.Name, True) '允许同名覆盖,否则为False
Next
End Sub
Microsoft.VisualBasic.FileSystem.Rename(原文件夹完整路径名称,新的文件夹名称)
Microsoft.VisualBasic.FileSystem.Rename("D:\1", "D:\2\1")‘当路径不对时会把原文件夹剪切到“D:\2\”下面文件夹名称不变
Microsoft.VisualBasic.FileSystem.Rename("D:\1", "D:\2\2")")‘当路径不对时会把原文件夹剪切到“D:\2\”下面文件夹名称 更改为 2
Microsoft.VisualBasic.FileSystem.Rename("D:\1", "D:\2")’当路径相同时只改文件夹名称 不移动文件
用 io.Directory.Exists 判断文件夹是否存在。
再用 My.Computer.FileSystem.CopyDirectory() 复制。
'这是VB的要先引用Microsoft Scripting RunTime,下面的例子是找叫cmd.xxx的文件的
Private Sub Command1_Click()
Dim m_objFSO As New FileSystemObject
Dim objFolder As Scripting.Folder '文件夹对象
Dim objFile As Scripting.File '文件对象
Set objFolder = m_objFSO.GetFolder("c:/test")
For Each objFile In objFolder.Files
Dim filenames() As String
filenames = Split(objFile.Name, ".")
If filenames(0) = "cmd" Then
FileCopy objFile.Path, "c:/TestCMD/" "newName." filenames(1)
End If
Next objFile
End Sub
-----------------------------------这是VB.net的--------------------------
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Integer
Dim files() As String
files = System.IO.Directory.GetFiles("C:/test")
For i = 0 To files.Length - 1
Dim filenames() As String
filenames = files(i).Substring(files(i).LastIndexOf("\") + 1).Split(".")
If filenames(0) = "cmd" Then
FileCopy(files(i), "c:/TestCMD/" "newName." filenames(1))
End If
Next
End Sub
第一步,点击VS工具
请点击输入图片描述
第二步,打开后,新建一个Windows窗体应用程序
请点击输入图片描述
第三步,新建完毕后,如图所示
请点击输入图片描述
第四步,拖动文本框与按钮,如图示
请点击输入图片描述
第五步,将剪贴板复制与粘贴代码输入,如图示
请点击输入图片描述
第六步,运行程序
请点击输入图片描述
7
第七步,点击按钮,成功从剪贴板中复制与粘贴操作
请点击输入图片描述