我试图从程序中读取属性,但无法从另一个读取此属性值。
我创建像这样的简单程序
package main
import "fmt"
var name string
func main(){
fmt.Println(name)
}
之后,我运行此命令“ go build -ldflags“ -X main.name = test” main.go“
在我的第二个程序中,我尝试打开此文件并将此值“ test”设置为我的属性,但是我无法做到这一点。我尝试过这种方式
var name string
func ReadValues(){
file, err := os.Open("main")
if err != nil {
panic(err)
}
defer file.Close()
buf := make([]byte, 4096)
for {
n, err := file.Read(buf)
if n == 0 {
break
}
if err != nil {
panic(err)
}
fmt.Print(string(buf[:n]))
}
}
func main() {
ReadValues()
}
但是它显示了许多奇怪的字符,例如“ RM @ O.M”。
您有什么建议吗?