程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C# 獲取相對路徑(絕對路徑轉相對路徑),

C# 獲取相對路徑(絕對路徑轉相對路徑),

編輯:C#入門知識

C# 獲取相對路徑(絕對路徑轉相對路徑),


這個的方法有很多吧。

1. 用PInvok調用Windows API的PathRelativePathTo

2. 自行處理字符串

3. 利用Uri

前兩種就不說了,覺得有點麻煩,想了解的同學,自已,百度Google一下吧。

第3種,也沒啥好說的,直接Code。

 1         public static string GetRelativePath(string filespec, string folder)
 2         {
 3             const string directorySeparatorChar = "\\";
 4             Uri pathUri = new Uri(filespec);
 5 
 6             if (!folder.EndsWith(directorySeparatorChar))
 7             {
 8                 folder += directorySeparatorChar;
 9             }
10             Uri folderUri = new Uri(folder);
11             return Uri.UnescapeDataString(folderUri.MakeRelativeUri(pathUri).ToString().Replace("/", directorySeparatorChar));
12         }

因為這個我是在WinRT裡用的,在WinRT裡,沒有 Path.DirectorySeparatorChar,你在其它環境下使用Path.DirectorySeparatorChar 替換 "\\"。



 


&在c語言中是什

&可以作為“按位與”或是“取地址”運算符
下面是作為兩種用法的介紹:
1. 按位與運算 按位與運算符"&"是雙目運算符。其功能是參與運算的兩數各對應的二進位相與。只有對應的兩個二進位均為1時,結果位才為1 ,否則為0。參與運算的數以補碼方式出現。
例如:9&5可寫算式如下: 00001001 (9的二進制補碼)&00000101 (5的二進制補碼) 00000001 (1的二進制補碼)可見9&5=1。
按位與運算通常用來對某些位清0或保留某些位。例如把a 的高八位清 0 , 保留低八位, 可作 a&255 運算 ( 255 的二進制數為0000000011111111)。
2.取地址
&作為一元運算符,結果是右操作對象的地址。
例如&x返回x的地址。
地址本身是一個抽象的概念,用於表示對象在存儲器中的邏輯位置
 

&在c語言中是什

&可以作為“按位與”或是“取地址”運算符
下面是作為兩種用法的介紹:
1. 按位與運算 按位與運算符"&"是雙目運算符。其功能是參與運算的兩數各對應的二進位相與。只有對應的兩個二進位均為1時,結果位才為1 ,否則為0。參與運算的數以補碼方式出現。
例如:9&5可寫算式如下: 00001001 (9的二進制補碼)&00000101 (5的二進制補碼) 00000001 (1的二進制補碼)可見9&5=1。
按位與運算通常用來對某些位清0或保留某些位。例如把a 的高八位清 0 , 保留低八位, 可作 a&255 運算 ( 255 的二進制數為0000000011111111)。
2.取地址
&作為一元運算符,結果是右操作對象的地址。
例如&x返回x的地址。
地址本身是一個抽象的概念,用於表示對象在存儲器中的邏輯位置
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved