我已经编写了一个复制功能,可以将文件从一个目录复制到另一个目录,但仍然会遇到“不支持给定路径格式”的异常。这是我的功能代码:
private void Copy(string letter)
{
string sourceDir = (txtPath.ToString());
string targetDir = letter;
foreach (var file in Directory.GetFiles(sourceDir))
File.Copy(file, Path.Combine(targetDir, Path.GetFileName(file)), true);
}
答案 0 :(得分:2)
要引用TextBox的内容,请使用TextBox.Text
属性
private void Copy(string letter)
{
string sourceDir = txtPath.Text.Trim();
string targetDir = letter;
// Check if source and target exists....
if(Directory.Exists(sourceDir) && Directory.Exists(targetDir))
{
foreach (var file in Directory.GetFiles(sourceDir))
File.Copy(file, Path.Combine(targetDir, Path.GetFileName(file)), true);
}
else
{
MessageBox.Show("Source=" + sourceDir + " or Target: " + targetDir + " doesn't exist"):
}
}
直接在TextBox实例上调用ToString()
方法返回类的名称,后跟text属性(类似" System.Windows.Forms.TextBox,Text:content文本框" ),显然这不是一个有效的路径
从您的评论中不清楚变量字母的内容是什么。因此,您还应该确保变量targetDir
指向实际的有效路径。
(单个驱动器号 C D或E 不是有效路径)