我有这个:
File.Move(file, trashFolderPath + "\\" + file);
其中file是某些值,如:
C:\mytest\Images\Hannah, Pow, 199169, 211 Addendum.pdf
和第二个参数都有一个像:
的值"C:\\mytest\\ImagesNotFound\\C:\\mytest\\Images\\Hannah, Pow, 199169, 211 Addendum.pdf"
但我得到了这个例外:
The given path's format is not supported.
答案 0 :(得分:4)
您正在使用完整文件名,其中包含完整路径以及Target
路径所使用的路径。注意目录字母C:
。使用:
File.Move(file, trashFolderPath + "\\" + Path.GetFileName(file));
您也可以使用Path.Combine
代替连接路径,例如:
File.Move(file, Path.Combine(trashFolderPath,Path.GetFileName(file)));
答案 1 :(得分:2)
" C:\ mytest \ ImagesNotFound \ C:\ mytest \ Images \ Hannah,Pow,199169,211 Addendum.pdf"不是有效的文件路径。因此,您需要file
中的get the file name,然后将其附加到trashFolderPath
。
File.Move(file, Path.Combine(trashFolderPath, Path.GetFileName(file));
使用Path.Combine()
组合路径名称。它会自动使用适当的目录分隔符,因此您的代码更具可移植性。