我试图遍历文件夹并读取其中的所有XML文件。
使用Directory.EnumerateFiles
从路径中读取。
我的.cs文件和XML文件文件夹位于同一路径
“C:\用户\文档\项目\ TestTool”
使用以下代码来读取文件。
string path = @"..\TestCases\";
foreach(string file in Directory.EnumerateFiles(path, "*.xml"))
{
}
使用此功能正在说明
无法找到路径“C:\ Program Files(x86)\ Common Files \ Microsoft 共享\ DevServer \的TestCases“
这指向WebDev.WebServer20路径而不是实际路径。
不确定为什么它指向一个完全不同的文件夹
我试过了string path = @"\TestCases\";
但是当我尝试这样做时,它会抛出一个特殊的陈述
找不到路径“C:\ TestCases”
我犯的错误是什么?请帮忙
答案 0 :(得分:0)
试一试:
string path = "..\\TestCases\\";
foreach (FileInfo file in new DirectoryInfo(path).EnumerateFiles("*.xml"))
{
string filePath = file.FullName;
}
答案 1 :(得分:0)
由于它在WebDev服务器下运行,因此它将使用WebDev.WebServer20.exe的所有相对路径的路径。
您必须使用:Server.MapPath("~")
才能找到自己的根。
string path = Server.MapPath("~") + @"\TestCases\";
foreach(string file in Directory.EnumerateFiles(path, "*.xml"))
{
}
请注意Server.MapPath("~")
是否指向bin,然后像Directory.GetParent(Server.MapPath("~")) + @"\TestCases\";
假设这是您的目标目录C:\User\Documents\Projects\TestTool\TestCases