C#-从treeview节点获取文件/文件夹路径
我的winform中有2个TreeView。其中包含我的计算机驱动器列表 请帮助我将所选文件/文件夹从一个树状视图复制和移动到另一个树状视图。我尝试使用两个字符串作为sourseDir和targetdir来存储文件的SOURSER和目标路径。我尝试使用下面的代码从TreeView节点访问源和目标路径C#-从treeview节点获取文件/文件夹路径,c#,winforms,C#,Winforms,我的winform中有2个TreeView。其中包含我的计算机驱动器列表 请帮助我将所选文件/文件夹从一个树状视图复制和移动到另一个树状视图。我尝试使用两个字符串作为sourseDir和targetdir来存储文件的SOURSER和目标路径。我尝试使用下面的代码从TreeView节点访问源和目标路径 string sourcedir = filelistleft.SelectedNode.FullPath.ToString(); string targetdir = filelistright.
string sourcedir = filelistleft.SelectedNode.FullPath.ToString();
string targetdir = filelistright.SelectedNode.FullPath.ToString();
foreach (var file in Directory.GetFiles(sourcedir))
File.Copy(file, Path.Combine(targetdir, Path.GetFileName(file)), true);
但是它抛出一个IOException目录名无效。
我能做什么?提前感谢…我认为因为FullPath属性返回节点到树视图根的相对路径,所以最好将树视图根路径的物理路径存储在变量中,然后将所选节点的完整路径添加到该变量中
string rootNodePhysicalPath = "C\\temp"; //assume c:\temp is tree view's root path
string selectedNodeFullPath = sourcedir;
string selectedNodePhysicalPath = rootNodePhysicalPath + sourcedir;
您是否尝试过调试它并查看传递给
文件的实际文件名。复制?您可以首先检查得到的无效目录名。异常中显示了它。是否需要在文件路径字符串之前添加@符号?引发异常时,sourcedir
和targetdir
的值是多少?您确定它们是有效路径吗?