Go使用第三方库获取自身程序的路径

不多说,上代码,使用了第三方库osext来获取自身路径。

package main

import (
    \"bitbucket.org/kardianos/osext\"
    \"fmt\"
    \"os\"
    \"path/filepath\"
)

func main() {
    //Go自带的获取当前工作目录的方法,但是工作目录不一定是程序自身所在的目录
    file, _ := os.Getwd()
    fmt.Println(file)
    //Go自带库没有获取可执行文件路径的能力,需要使用第三方库
    var err error
    if file, err = osext.Executable(); err != nil {
        fmt.Println(err.Error())
    } else {
        fmt.Println(file)
    }
    fmt.Println(filepath.Dir(file))    //分离出路径,最后不带\'\'
    file, _ = osext.ExecutableFolder() //分离出路径,最后带\'\'
    fmt.Println(file)
    file, _ = osext.GetExePath() //用法与Executable一样,不过此方法已过时
    fmt.Println(file)
}

1 评论

发表评论

电子邮件地址不会被公开。