簡體   English   中英

使用System.Uri創建相對路徑

[英]Create Relative Path Using System.Uri

我正在使用以下代碼將絕對文件系統路徑轉換為相對路徑。

public static void Main(string[] args)
{
    System.Uri uri1 = new Uri(@"C:\Users\301591\Downloads\My Pics\abcd.jpg", true);
    System.Uri uri2 = new Uri(@"C:\Users\301591\", true);
    Uri relativeUri = uri2.MakeRelativeUri(uri1);
    Console.WriteLine(relativeUri.ToString());
}

我得到的結果是/ Downloads / My Pics / abcd.jpg

但是編譯器發出警告,我正在使用的構造函數被標記為過時。

Uri testUri=new Uri("string path","flag to remove escape sequences");

還有其他方法可以在結果中顯示轉義序列來創建相對路徑嗎?

我找到了解決方案。

它是

Console.WriteLine(Uri.UnescapeDataString(relativeUri.ToString()));

根據MSDN,Uri.MakeRelative方法已過時: http : //msdn.microsoft.com/zh-cn/library/system.uri.makerelative.aspx

因此Urii.MakeRelativeUri無法通過過時警告http://msdn.microsoft.com/en-us/library/system.uri.makerelativeuri

因此,請與Cosntructor new Uri(@“ C:\\ Users \\ 301591 \\”)一起使用http://msdn.microsoft.com/zh-cn/library/system.uri.makerelativeuri

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM