文件或目录的通用变量名是"PATH".不幸的是,这也是围棋中一个套餐的名字.此外,在doit中将path更改为参数名,如何编译此代码?

package main

import (
    "path"
    "os"
)

func main() {
    DoIt("file.txt")
}

func DoIt(path string) {
    path.Join(os.TempDir(), path)
}

我得到的错误是:

$6g pathvar.go 
pathvar.go:4: imported and not used: path
pathvar.go:13: path.Join undefined (type string has no field or method Join)

推荐答案

path string比进口的path更逊色.您可以做的是将import中的第"path"行更改为pathpkg "path",从而将导入包的别名设置为例如pathpkg,因此代码的开头如下所示

package main

import (
    pathpkg "path"
    "os"
)

当然,然后您必须将DoIt代码更改为:

pathpkg.Join(os.TempDir(), path)

Go相关问答推荐

Golang Viper:如果第一个字段不存在,如何从另一个字段获取值

困扰围棋官方巡回赛的S建议所有方法都使用同一类型的接收器

使用一元或服务器流将切片从GRPC服务器返回到客户端

在Mac中使用uname获取处理器体系 struct 时,在为AMD64构建Go二进制时出现错误结果

如何使用工作区方法扩展克隆的Golang库

该文件位于模块.内,该模块不包含在您的工作区中

如何在 Go 服务中导入 monorepo 中的包?

如何将 DirName 和 serial 添加到 X509v3 Authority Key Identifier

如何从 Asterisk Manager Interface Event 获取活动呼叫数

有没有办法计算枚举中定义的项目总数?

不能使用 mockDB(*MockDB 类型的变量)作为 struct 文字中的 *gorm.DB 值

如何将一片 map 转换为一片具有不同属性的 struct

如何在切片增长时自动将切片的新元素添加到函数参数

Golang 构建多平台问题

Golang 工作池实现意外工作

gorm 获取列名

每 N 秒运行一次函数,上下文超时

go 堆栈跟踪:在某些函数调用参数或返回值之后的问题(?)标记是什么意思?

GOLANG 如何使用 http.FileServer 从模板目录加载某个 html 文件

Gin中测试模式有什么用