我想path.Dir()在Unix和Windows上使用特定于平台的目录。请看一下代码:package mainimport ( "fmt" "path")func main() { fmt.Println(`path.Dir("a/b/c"): `, path.Dir("a/b/c")) fmt.Println(`path.Dir("c:\foo\bar.exe"): `, path.Dir(`c:\foo\bar.exe`))}这个输出path.Dir("a/b/c"): a/bpath.Dir("c:\foo\bar.exe"): .我想第二次打电话给path.Dir()(windows)类似的东西c:\foo是否可以告诉path.dir()我在Windows上运行的程序使用Windows分隔符?还是应该始终将反斜杠转换\ 为正斜杠(/)?这里首选的策略是什么?
1 回答
30秒到达战场
TA贡献1828条经验 获得超6个赞
我看到“问题”在哪里。提示path.Dir()
始终使用/
并且filepath.Dir()
是用于依赖于平台的操作的函数。
package main
import (
"fmt"
"path/filepath"
)
func main() {
fmt.Println(`filepath.Dir("a/b/c"): `, filepath.Dir("a/b/c"))
fmt.Println(`filepath.Dir("c:\foo\bar.exe"): `, filepath.Dir(`c:\foo\bar.exe`))
}
在Windows上:
filepath.Dir("a/b/c"): a\b
filepath.Dir("c:\foo\bar.exe"): c:\foo
- 1 回答
- 0 关注
- 248 浏览
添加回答
举报
0/150
提交
取消