private static void saveDirAndFiles(TreeNode currNode)
{
using (StreamWriter file = new StreamWriter("test.html"))
{
if(currNode.ValueType=="DIR") //Are you a File or Directory
{
file.WriteLine(currNode.Value);//relative Name of Directory
}
else
{
string[] file1 = File.ReadAllLines(Path.GetFullPath(currNode.Value)); //EXEPTION
string prgcode = "";
foreach (string line in file1)
{
prgcode += line;
}
file.WriteLine(currNode.Value);//relative Name of File +...
file.WriteLine(String.Format("<code><pre>{0}</pre></code>", prgcode)); //... The Content of the File
}
}
foreach (TreeNode item in currNode.ChildNodes)
{
saveDirAndFiles(item);
}
}
该功能仅在我正在处理的项目中搜索绝对路径。我的项目在桌面上,文件名在C目录上。异常说:找不到Project \ bin \ debug \ Filename。
答案 0 :(得分:1)
Path.GetFullPath
为您提供给定路径序列的绝对文件路径,该路径序列可以是绝对路径也可以是相对路径。它甚至不检查文件是否存在,也不在文件系统中执行搜索。
如果要从其他位置加载文件,则可以有两个选项:使用Path.Combine
(优选选项)将相对路径显式重新绑定到不同的基本路径,或者更改环境当前工作目录(可能在您的申请的其他部分有副作用。)