草庐IT

GIT_PATH_TO_FILE

全部标签

运行时错误 : “assignment to entry in nil map”

我是golang的新手。我正在尝试读取csv文件并收集数据。但是在运行之后我得到了这个错误:panic:assignmenttoentryinnilmapgoroutine1[running]:panic(0x4dedc0,0xc082002440)C:/Go/src/runtime/panic.go:464+0x3f4main.(*stateInformation).setColumns(0xc08202bd40,0xc082060000,0x11,0x20)F:/Works/Go/src/examples/state-info/main.go:25+0xdamain.main()F

VSCODE:使用WSL GIT而不是Git用于Windows

我想将WSL(Windows上的bash)与VSCODE一起使用,而不是Windows的git,以避免多个GIT安装。我创建了一个简单的蝙蝠脚本来模仿git.exe通过在WSL中重定向GIT命令来计算。它在CMD中很好地工作,但与VSCODE不合适。另外,WSL是我在VSCODE中的默认终端。VSCODEsettings.json:{"git.path":"D:\\tools\\git.bat","terminal.integrated.shell.windows":"C:\\Windows\\Sysnative\\bash.exe"}和git.bat:@echooffbash-c'git%*

unit-testing - 单元测试 os.File.Write 调用

我想对调用os.File.Write()的函数进行单元测试,并希望达到100%的覆盖率。此函数返回n和一个错误。引发错误很容易。我只需要关闭文件。我怎样才能不引起写入错误和写入数据长度的值n不同?看起来我应该创建一个虚拟的os.File,我可以在上面控制返回的错误。不幸的是,os.File不是一个接口(interface)。编辑:根据PeterOS的回答,仔细检查文档后,Write()方法,是否为io.Writer或io.File如果err为nil,将始终返回写入的slice的长度。结果,看来我的问题毫无意义。我学到了一些重要的东西,谢谢。我有一些代码要清理。附带说明一下,我对100%

go - 洛格鲁斯 : How to print con console log

实现LogrusGo包。文件已保存,但停止在控制台上打印日志,日志仅在创建的名为vendor.log的.log文件中可见。这是当前使用的代码。packageloggingimport("fmt""os"mylog"github.com/sirupsen/logrus")//InitializeLoggingasdasfuncInitializeLogging(logFilestring){varfile,err=os.OpenFile(logFile,os.O_RDWR|os.O_CREATE|os.O_APPEND,0666)iferr!=nil{fmt.Println("Could

file - Golang 检查文件扩展名不起作用

我想从控制台获取文件路径并检查该文件是否为虚拟机文件。我写了这段代码:funcmain(){reader:=bufio.NewReader(os.Stdin)fmt.Println("Enterthepathofthevmfile:")path,_:=reader.ReadString('\n')iffilepath.Ext(path)!=".vm"{fmt.Println("Error!filemustbevmfile")}但它不起作用。我刚开始学习Go,所以如果这是一个基本错误,请接受我的歉意。 最佳答案 检查文件扩展名:pat

go - "go run file.go"命令后可执行文件存储在哪里?

go编译器执行完如下命令后的可执行文件存放在哪里?$>gorunfile.go 最佳答案 在/tmp文件夹中,如果您使用的是unix机器。如果您使用的是Windows,则在\Users\SomeUser\AppData\Local\Temp\中。 关于go-"gorunfile.go"命令后可执行文件存储在哪里?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/46570517/

file - 打开和写入文件时出错

我想打开一个文件并向其中写入一些文本,但是出现以下错误:.\hello.go:13:cannotusemsg(typestring)astype[]byteinargumenttof.Write到目前为止,这是我的代码:packagemainimport("os")funcprinter(msgstring)(errerror){f,err:=os.Create("helloworld.txt")iferr!=nil{returnerr}deferf.Close()f.Write(msg)returnerr}funcmain(){printer("HelloWorld")}

file - 使用golang将字节数组转换回文件

有没有办法将字节数组写入文件?我有文件名和文件扩展名(如temp.xml)。 最佳答案 听起来您只需要标准库中的ioutil.WriteFile函数。https://golang.org/pkg/io/ioutil/#WriteFile它看起来像这样:permissions:=0644//orwhateveryouneedbyteArray:=[]byte("tobewrittentoafile\n")err:=ioutil.WriteFile("file.txt",byteArray,permissions)iferr!=nil{

go - `go get` 命令失败 : unrecognized import path "_/<path>"

基本上,我的问题是,为什么要在我的导入路径前面加一个下划线?它说importpathdoesnotbeginwithhostname我假设这是因为它以下划线开头。我在某处读到这可能与我搞砸了我的GOPATH有关,但我尝试将它移动到任何地方,项目文件夹内、项目文件夹外、默认位置等。我是新来的,最近出现过几次。非常感谢任何指导! 最佳答案 所以我误解了我的源代码应该在哪里。对于同一条船上的任何人,它需要在实际src文件夹中的go路径内。我找到了this有帮助。 关于go-`goget`命令失

git - 在 Github repo 的子目录中安装 golang 库

通常Github上的Golang项目在项目的根目录下有一个src文件夹时被goinstall消费。现在我有一个结构如下的Git存储库:project/lang/typescript/java/golang/src/pkg/有没有办法对这个git仓库使用goinstall?像这样:goinstall'github.com/org/project'--dir'lang/golang'有人知道这是否可行以及如何实现吗?或许我可以先使用goget获取正确的目录,然后再使用goinstall?更新-也许一种解决方案是使用gobundle打包库,然后使用文件的url安装go库?