我有一个很大的问题。我有一个驱动器,在不同级别的文件夹中有近600,000个文件,我需要创建一个带有文件路径列表的SQL表,但不是所有文件。
结构是:
J:/
J:/test
J:/XCR
J:/554
J:/B1
我需要将所有文件保存在文件夹test& XCR但只包含其他文件夹中某些目录中的文件。我有一个上传到SQL表的文件夹列表。
我编写了一个使用Directory.GetFiles()和Directory.GetDirectories的递归函数,但是当目录级别增加且文件名变长时我遇到问题。我也有以下错误,我不确定...
System.IO.IOException: Element not found. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath
我想我会以错误的方式解决这个问题。有人能指出我正确的方向吗?
非常感谢任何帮助!
编辑:
public void copyFiles(string dirName, int level)
{
try
{
if (level == 1)
{
foreach (string f in Directory.GetFiles(dirName))
{
Response.Write(f + "<br />");
// insTbl.Rows.Add(f);
}
}
foreach (string d in Directory.GetDirectories(dirName))
{
foreach (string f in Directory.GetFiles(d))
{
Response.Write(f + "<br />");
// insTbl.Rows.Add(f);
}
level++;
copyFiles(d,level);
}
}
catch (Exception ex)
{
Response.Write(ex);
}
}