golang windows获取当前文件夹路径
时间: 2023-08-12 14:20:29 浏览: 365
在 Go 语言中,可以使用 `os.Getwd()` 函数来获取当前工作目录的路径。该函数返回一个字符串类型的路径,表示当前程序所在的目录。
以下是一个示例代码:
```go
package main
import (
"fmt"
"os"
)
func main() {
dir, err := os.Getwd()
if err != nil {
fmt.Println("获取当前目录失败:", err)
return
}
fmt.Println("当前目录为:", dir)
}
```
运行上述代码,输出结果为当前程序所在的目录的路径。
如果需要获取当前程序所在的绝对路径,可以使用 `os.Executable()` 函数。该函数会返回当前可执行文件的路径。
以下是一个示例代码:
```go
package main
import (
"fmt"
"os"
"path/filepath"
)
func main() {
exePath, err := os.Executable()
if err != nil {
fmt.Println("获取可执行文件路径失败:", err)
return
}
dir := filepath.Dir(exePath)
fmt.Println("当前程序所在目录为:", dir)
}
```
运行上述代码,输出结果为当前程序所在的目录的路径。
相关问题
golang path 获取当前程序路径
你可以使用`os/exec`和`filepath`包来获取当前程序路径,代码如下:
```go
package main
import (
"fmt"
"os"
"os/exec"
"path/filepath"
)
func main() {
// 获取当前可执行文件的路径
file, err := exec.LookPath(os.Args[0])
if err != nil {
panic(err)
}
// 获取当前路径
path, err := filepath.Abs(file)
if err != nil {
panic(err)
}
// 获取当前目录
dir := filepath.Dir(path)
fmt.Println("当前程序路径:", path)
fmt.Println("当前目录:", dir)
}
```
这段代码会输出当前程序路径和当前目录。
golang windows 合并两个路径
在 Go 语言中,可以使用 `filepath.Join` 函数来合并两个路径。该函数会自动处理路径分隔符,确保合并后的路径符合当前操作系统的规范。
以下是一个示例代码:
```go
package main
import (
"fmt"
"path/filepath"
)
func main() {
path1 := "C:\\Users\\user\\Desktop"
path2 := "file.txt"
fullPath := filepath.Join(path1, path2)
fmt.Println(fullPath)
}
```
运行上述代码,输出结果为:
```
C:\Users\user\Desktop\file.txt
```
其中,`filepath.Join` 函数会自动将路径分隔符从 `/` 替换为 `\`,以及在路径末尾添加 `\`。如果其中一个路径已经包含了末尾的分隔符,则不会重复添加。
阅读全文