比如 c:\winnt 下所有文件和目录到D:\windows
C#
9 个解决方案
#1
/// <summary>
/// 复制指定目录的所有文件,不包含子目录
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,表示覆盖同名文件,否则不覆盖</param>
public static void CopyFiles(string sourceDir,string targetDir,bool overWrite)
{
CopyFiles(sourceDir,targetDir,overWrite,false);
}
/// <summary>
/// 复制指定目录的所有文件
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,覆盖同名文件,否则不覆盖</param>
/// <param name="copyDir">如果为true,包含目录,否则不包含</param>
public static void CopyFiles(string sourceDir,string targetDir,bool overWrite,bool copyDir)
{
string [] fileEntries = Directory.GetFiles(sourceDir);
if(overWrite)
{
foreach(string fileName in fileEntries)
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")),true);
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
else
{
foreach(string fileName in fileEntries)
{
if(!File.Exists(targetDir+fileName.Substring(fileName.LastIndexOf("\\"))))
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
}
if(copyDir)
{
foreach(string subDir in Directory.GetDirectories(sourceDir))
{
string newSubDir = targetDir+subDir.Substring(subDir.LastIndexOf("\\"));
if(!Directory.Exists(newSubDir))
Directory.CreateDirectory(newSubDir);
CopyFiles(subDir,newSubDir,overWrite,copyDir);
}
}
}
/// 复制指定目录的所有文件,不包含子目录
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,表示覆盖同名文件,否则不覆盖</param>
public static void CopyFiles(string sourceDir,string targetDir,bool overWrite)
{
CopyFiles(sourceDir,targetDir,overWrite,false);
}
/// <summary>
/// 复制指定目录的所有文件
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,覆盖同名文件,否则不覆盖</param>
/// <param name="copyDir">如果为true,包含目录,否则不包含</param>
public static void CopyFiles(string sourceDir,string targetDir,bool overWrite,bool copyDir)
{
string [] fileEntries = Directory.GetFiles(sourceDir);
if(overWrite)
{
foreach(string fileName in fileEntries)
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")),true);
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
else
{
foreach(string fileName in fileEntries)
{
if(!File.Exists(targetDir+fileName.Substring(fileName.LastIndexOf("\\"))))
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
}
if(copyDir)
{
foreach(string subDir in Directory.GetDirectories(sourceDir))
{
string newSubDir = targetDir+subDir.Substring(subDir.LastIndexOf("\\"));
if(!Directory.Exists(newSubDir))
Directory.CreateDirectory(newSubDir);
CopyFiles(subDir,newSubDir,overWrite,copyDir);
}
}
}
#2
遍历+递归
#3
递归遍历
#4
学习了,当然要UP,同时接分
#5
up 下!
你做过网络的那种吗!
你做过网络的那种吗!
#6
http://www.zpcity.com/ArLi//commonprj/cls_DirCopy.cs
#7
嗯嗯
#8
谢谢各位了!
接着还有一个问题!上面已经做好了局域网的文件的 COPY。
我想进一步实现,局域网*享基于用户名和密码的访问?
请问怎么做,该怎么样传送用户名和密码?
接着还有一个问题!上面已经做好了局域网的文件的 COPY。
我想进一步实现,局域网*享基于用户名和密码的访问?
请问怎么做,该怎么样传送用户名和密码?
#9
谢谢各位了!
接着还有一个问题!上面已经做好了局域网的文件的 COPY。
我想进一步实现,局域网*享基于用户名和密码的访问?
请问怎么做,该怎么样传送用户名和密码?
服务器上有一个要密码访问的共享文件夹。
在客户端写一个基于Socket的编程,怎么验证密码!
我的思路是,先得到S端的共享UNC,传送User 和Password,并验证。
但我不知道怎么实现这一步!
请教各位了!!!
接着还有一个问题!上面已经做好了局域网的文件的 COPY。
我想进一步实现,局域网*享基于用户名和密码的访问?
请问怎么做,该怎么样传送用户名和密码?
服务器上有一个要密码访问的共享文件夹。
在客户端写一个基于Socket的编程,怎么验证密码!
我的思路是,先得到S端的共享UNC,传送User 和Password,并验证。
但我不知道怎么实现这一步!
请教各位了!!!
#1
/// <summary>
/// 复制指定目录的所有文件,不包含子目录
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,表示覆盖同名文件,否则不覆盖</param>
public static void CopyFiles(string sourceDir,string targetDir,bool overWrite)
{
CopyFiles(sourceDir,targetDir,overWrite,false);
}
/// <summary>
/// 复制指定目录的所有文件
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,覆盖同名文件,否则不覆盖</param>
/// <param name="copyDir">如果为true,包含目录,否则不包含</param>
public static void CopyFiles(string sourceDir,string targetDir,bool overWrite,bool copyDir)
{
string [] fileEntries = Directory.GetFiles(sourceDir);
if(overWrite)
{
foreach(string fileName in fileEntries)
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")),true);
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
else
{
foreach(string fileName in fileEntries)
{
if(!File.Exists(targetDir+fileName.Substring(fileName.LastIndexOf("\\"))))
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
}
if(copyDir)
{
foreach(string subDir in Directory.GetDirectories(sourceDir))
{
string newSubDir = targetDir+subDir.Substring(subDir.LastIndexOf("\\"));
if(!Directory.Exists(newSubDir))
Directory.CreateDirectory(newSubDir);
CopyFiles(subDir,newSubDir,overWrite,copyDir);
}
}
}
/// 复制指定目录的所有文件,不包含子目录
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,表示覆盖同名文件,否则不覆盖</param>
public static void CopyFiles(string sourceDir,string targetDir,bool overWrite)
{
CopyFiles(sourceDir,targetDir,overWrite,false);
}
/// <summary>
/// 复制指定目录的所有文件
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,覆盖同名文件,否则不覆盖</param>
/// <param name="copyDir">如果为true,包含目录,否则不包含</param>
public static void CopyFiles(string sourceDir,string targetDir,bool overWrite,bool copyDir)
{
string [] fileEntries = Directory.GetFiles(sourceDir);
if(overWrite)
{
foreach(string fileName in fileEntries)
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")),true);
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
else
{
foreach(string fileName in fileEntries)
{
if(!File.Exists(targetDir+fileName.Substring(fileName.LastIndexOf("\\"))))
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
}
if(copyDir)
{
foreach(string subDir in Directory.GetDirectories(sourceDir))
{
string newSubDir = targetDir+subDir.Substring(subDir.LastIndexOf("\\"));
if(!Directory.Exists(newSubDir))
Directory.CreateDirectory(newSubDir);
CopyFiles(subDir,newSubDir,overWrite,copyDir);
}
}
}
#2
遍历+递归
#3
递归遍历
#4
学习了,当然要UP,同时接分
#5
up 下!
你做过网络的那种吗!
你做过网络的那种吗!
#6
http://www.zpcity.com/ArLi//commonprj/cls_DirCopy.cs
#7
嗯嗯
#8
谢谢各位了!
接着还有一个问题!上面已经做好了局域网的文件的 COPY。
我想进一步实现,局域网*享基于用户名和密码的访问?
请问怎么做,该怎么样传送用户名和密码?
接着还有一个问题!上面已经做好了局域网的文件的 COPY。
我想进一步实现,局域网*享基于用户名和密码的访问?
请问怎么做,该怎么样传送用户名和密码?
#9
谢谢各位了!
接着还有一个问题!上面已经做好了局域网的文件的 COPY。
我想进一步实现,局域网*享基于用户名和密码的访问?
请问怎么做,该怎么样传送用户名和密码?
服务器上有一个要密码访问的共享文件夹。
在客户端写一个基于Socket的编程,怎么验证密码!
我的思路是,先得到S端的共享UNC,传送User 和Password,并验证。
但我不知道怎么实现这一步!
请教各位了!!!
接着还有一个问题!上面已经做好了局域网的文件的 COPY。
我想进一步实现,局域网*享基于用户名和密码的访问?
请问怎么做,该怎么样传送用户名和密码?
服务器上有一个要密码访问的共享文件夹。
在客户端写一个基于Socket的编程,怎么验证密码!
我的思路是,先得到S端的共享UNC,传送User 和Password,并验证。
但我不知道怎么实现这一步!
请教各位了!!!