Path型別的擴充套件方法 z

2022-01-23 06:14:13 字數 1894 閱讀 3875

寫了乙個基於system.io.path型別方法的擴充套件型別,用於快速對檔案系統路徑進行操作。如下圖:

todirectory方法會把乙個檔案路徑放到資料夾路徑內並返回結果,比如:

@"d:\資料夾"

));輸出:

d:\資料夾\c.jpg
todirectory方法還可以把一些列的檔案放到乙個資料夾路徑內,這裡還需要乙個源資料夾路徑。比如我們想把「c:\資料夾」內的一些檔案複製到「d:\新資料夾」內,源資料夾路徑就是「c:\資料夾」。通過這個方法來完成檔案路徑轉換,如下**:

var

paths

=new

string

;var

destpaths

=paths

.todirectory(

@"d:\新資料夾"

, @"c:\資料夾"

);foreach

(var

file

indestpaths)

console

.writeline(file);

輸出:

d:\新資料夾\a.jpg

d:\新資料夾\b.cs

d:\新資料夾\子資料夾\test.txt

d:\新資料夾\子資料夾\子子資料夾\haha

changefilename和changefilenameonly方法可以改變檔案的名稱,他們的區別是後者不會更改副檔名,示例:

));輸出:

getdirectorypath方法的用途和path.getdirectoryname方法是一致的,和path.getdirectoryname方法不同的是,它總是會返回上一層的目錄。讓我們來看path.getdirectoryname方法的乙個問題:

var

path1

=@"c:\test\mgen"

;var

path2

=@"c:\test\mgen\"

;console

.writeline(

path

.getdirectoryname(path1));

console

.writeline(

path

.getdirectoryname(path2));

輸出:

c:\test

c:\test\mgen

由於第二個路徑最後面有」\」,而path.getdirectoryname方法呼叫後僅會把這個」\」去掉。

而getdirectorypath方法的執行會先去掉後面的」\」(如果有的話),所以getdirectorypath方法總是會返回上一層的目錄。如下getdirectorypath方法執行:

public

static

string

getdirectorypath(

this

string

path)

C ,資料型別擴充套件 z

macd的公式 diff ema close,short ema close,long dea ema diff,m macd 2 diff dea colorstick 它的變數是可以直接進行加減 除的,但是我們要知道,它裡面的close這個東西實際上也是乙個陣列型別的。同過總結分析我們可以知道。...

Unity 對型別的擴充套件方法

上圖是乙個定義的列舉型別direction,表示列舉東南西北四個方向。下圖是通過擴充套件產生了新的方法opposite。ps 這裡opposite方法的作用是獲取反方向 並且這種拓展也適用於列舉的物件,如下圖。direction2通過oppsite函式獲取到了direction1的反方向。上圖定義了...

C 為型別擴充套件方法

什麼是擴充套件方法?擴充套件方法使您能夠向現有型別 或介面 新增 方法,而無需建立新的派生型別 重新編譯或以其他方式修改原始型別。擴充套件方法是一種特殊的靜態方法 但可以像擴充套件型別 上的例項方法一樣進行呼叫。對於用 c 和 visual basic 編寫的客戶端 呼叫擴充套件方法與呼叫在型別中實...