本文介绍了Path.Combine 绝对路径和相对路径字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试使用 Path.Combine
.
I'm trying to join a Windows path with a relative path using Path.Combine
.
然而,Path.Combine(@"C:lah",@"..ling")
反而返回 C:lah..ling
C:ling
.
有谁知道如何在不编写自己的相对路径解析器的情况下完成此操作(这应该不会太难)?
Does anyone know how to accomplish this without writing my own relative path resolver (which shouldn't be too hard)?
推荐答案
什么有效:
string relativePath = "..\bling.txt";
string baseDirectory = "C:\blah\";
string absolutePath = Path.GetFullPath(baseDirectory + relativePath);
(结果:absolutePath="C:ling.txt")
(result: absolutePath="C:ling.txt")
什么不起作用
string relativePath = "..\bling.txt";
Uri baseAbsoluteUri = new Uri("C:\blah\");
string absolutePath = new Uri(baseAbsoluteUri, relativePath).AbsolutePath;
(结果:absolutePath="C:/blah/bling.txt")
(result: absolutePath="C:/blah/bling.txt")
这篇关于Path.Combine 绝对路径和相对路径字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!