![]()
/// <summary>
/// 下载文件(将服务器上的文件copy到本地)
/// </summary>
/// <param name="localPath_Str">本地路径</param>
/// <param name="sourcePath">服务器上的文件资源路径</param>
void getDirs(string localPath_Str, string sourcePath)
{
string[] fileNames = Directory.GetFiles(sourcePath);//获得文件夹内的文件数量
if (fileNames.Length > 0)
{
for (int i = 0; i < fileNames.Length; i++)
{
int k = fileNames[i].LastIndexOf("\\");
string fileName_Str = fileNames[i].Substring(k + 1);
if (!File.Exists(localPath_Str + "\\" + fileName_Str))//检查本地是否存在将要下载的文件
{
File.Create(localPath_Str + "\\" + fileName_Str).Close();//创建文件
}
File.Copy(fileNames[i], localPath_Str + "\\" + fileName_Str, true);//替换掉文件内容。
}
}
string[] dirInfo = Directory.GetDirectories(sourcePath);//检查是否有文件夹
if (dirInfo.Length > 0)
{
for (int i = 0; i < dirInfo.Length; i++)
{
int k = dirInfo[i].LastIndexOf("\\");
string dirInfo_Str = dirInfo[i].Substring(k + 1);
if (!Directory.Exists(localPath_Str + "\\" + dirInfo_Str))//检查本地是否有相同的文件夹
{
DirectoryInfo directory = new DirectoryInfo(localPath_Str + "\\" + dirInfo_Str);
directory.Create();
}
getDirs(localPath_Str + "\\" + dirInfo_Str, dirInfo[i]);
}
}
}
下载文件