我正在使用FluentFTP,在这里我有一种可以正常工作的方法。我希望能够通过文本框设置目录,并且目录的所有内容以及子目录都可以通过FTP上传。
此代码可以找到根文件夹和子目录中的所有文件,但会上载根文件夹中的目录和子目录的所有内容。我希望它上传目录和子目录,所有内容都放在正确的位置。
感谢您的帮助!
public static List<string> GetAllFilesFromFolder(string root, bool searchSubfolders)
{
Queue<string> folders = new Queue<string>();
List<string> files = new List<string>();
folders.Enqueue(root);
while (folders.Count != 0)
{
string currentFolder = folders.Dequeue();
try
{
string[] filesInCurrent = System.IO.Directory.GetFiles(currentFolder, "*.*", System.IO.SearchOption.AllDirectories);
files.AddRange(filesInCurrent);
}
catch
{
// Do Nothing
}
try
{
if (searchSubfolders)
{
string[] foldersInCurrent = System.IO.Directory.GetDirectories(currentFolder, "*.*", System.IO.SearchOption.AllDirectories);
foreach (string _current in foldersInCurrent)
{
folders.Enqueue(_current);
}
}
}
catch
{
// Do Nothing
}
}
return files;
}