こんにちは、kurumi-bioです。
第1回目のpathパッケージ(標準ライブラリー)の学習です。
前回の記事
APIリファレンス(過去記事の一覧)
環境
- Windows
OSバージョン:Windows11 Home 22H2
Go言語のバージョン:go version go1.20.3 windows/amd64 - Linux
OSバージョン:openSUSE Leap 15.4
Go言語のバージョン:go version go1.20.3 linux/amd64
Base関数
func Base(path string) string
package main import ( "fmt" "path" "path/filepath" ) func printBase(pathString string) { fmt.Printf("[%s] -> [%s]\n", pathString, path.Base(pathString)) } func main() { fmt.Printf("separator=[%s]\n", string(filepath.Separator)) //Windows Path printBase("C:\\test1\\test1.go") printBase("\\test2\\test2-1") printBase("\\test3\\test3-1\\") printBase("\\test4\\test4-1\\..") printBase("c:\\test5\\..\\test5-1") printBase("\\test6\\..\\..\\test6-1") //Linux Path printBase("C:/test1/test1.go") printBase("/test2/test2-1") printBase("/test3/test3-1/") printBase("/test4/test4-1/..") printBase("c:/test5/../test5-1") printBase("/test6/../../test6-1") }
◆実行結果(Windows)
◆実行結果(Linux)
Clean関数
func Clean(path string) string
package main import ( "fmt" "path" ) func printClean(pathString string) { fmt.Printf("[%s] -> [%s]\n", pathString, path.Clean(pathString)) } func main() { //Windows Path printClean("C:\\test1\\test1.go") printClean("\\test2\\test2-1") printClean("\\test3\\test3-1\\") printClean("\\test4\\test4-1\\..") printClean("c:\\test5\\..\\test5-1") printClean("\\test6\\..\\..\\test6-1") //Linux Path printClean("C:/test1/test1.go") printClean("/test2/test2-1") printClean("/test3/test3-1/") printClean("/test4/test4-1/..") printClean("c:/test5/../test5-1") printClean("/test6/../../test6-1") }
◆実行結果(Windows)
◆実行結果(Linux)
Dir関数
func Dir(path string) string
package main import ( "fmt" "path" ) func printDir(pathString string) { fmt.Printf("[%s] -> [%s]\n", pathString, path.Dir(pathString)) } func main() { //Windows Path printDir("C:\\test1\\test1.go") printDir("\\test2\\test2-1") printDir("\\test3\\test3-1\\") printDir("\\test4\\test4-1\\..") printDir("c:\\test5\\..\\test5-1") printDir("\\test6\\..\\..\\test6-1") //Linux Path printDir("C:/test1/test1.go") printDir("/test2/test2-1") printDir("/test3/test3-1/") printDir("/test4/test4-1/..") printDir("c:/test5/../test5-1") printDir("/test6/../../test6-1") }
◆実行結果(Windows)
◆実行結果(Linux)
Ext関数
func Ext(path string) string
package main import ( "fmt" "path" ) func printExt(pathString string) { fmt.Printf("[%s] -> [%s]\n", pathString, path.Ext(pathString)) } func main() { printExt("c:/test/test.bat") printExt("test") printExt("/test/test.bat.txt") printExt("/test/test.bat.") printExt("c:/test/test.bat.txt/") }
◆実行結果(Windows)
◆実行結果(Linux)
最後までご覧いただきありがとうございます