我需要首先提取相對(duì)路徑中第一個(gè)目錄的名稱。我知道我可以去做:relPath := "a/b/c/file.so"splitPath := strings.Split(relPath, string(os.PathSeparator))rootDirName := splitPath[0]有沒有更好的辦法?
1 回答

aluckdog
TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超7個(gè)贊
如果你問是否有辦法用 1 個(gè)標(biāo)準(zhǔn)的 Go 函數(shù)來做到這一點(diǎn):我不知道。
另一種方法是:
relPath := "a/b/c/file.so"i := strings.Index(relPath, string(os.PathSeparator)) rootDirName := relPath[:i]
或者如果路徑可能/
根本不包含:
relPath := "a/b/c/file.so"i := strings.Index(relPath, string(os.PathSeparator)) rootDirName := ""if i != -1 { rootDirName = relPath[:i] }
這樣做的好處是不必拆分整個(gè)字符串,因此在長(zhǎng)路徑上可能會(huì)更快一些。
- 1 回答
- 0 關(guān)注
- 130 瀏覽
添加回答
舉報(bào)
0/150
提交
取消