gpt4 book ai didi

arrays - GO:数组/slice 到常规字符串

转载 作者:数据小太阳 更新时间:2023-10-29 03:27:28 25 4
gpt4 key购买 nike

我是 golang 的新手,也是编程的新手。前进对我来说非常艰难。这是一直让我感到困惑的一件事:数据类型。如果你运行这个(不是在 Playground 上)然后它会吐出:

./main.go:40: cannot use recorded (type string) as type SVC in append

如果我反转附加调用中的值,它会吐出:

./main.go:40: first argument to append must be slice; have string

我想做的是抓取主目录中的所有内容,将所有修改后的值追加到数组中,然后使用 ioutil 将数组放入文件中。我想要的(截至目前)是将值附加到 func 记录中的 slice 。有人可以帮忙吗?

package main

import "os"
import "io/ioutil"
import "fmt"

type SVC struct {
key string
val string
}

func main() {
os.Chdir("../../../../../../..")
var data, err = ioutil.ReadDir("home")
checkerr(err)
for _, data := range data {
fmt.Println(data.Name())
}
os.Chdir("home/beanboybunny/repos/bux/go/src/bux")
}
func checkerr(err1 error) {
if err1 != nil {
fmt.Println("error")
}
}
func writer(dataname string) {
f := "var "
uname := dataname
q := " = VVC{\n"
w := " bux: 1,\n"
e := " op: true,\n"
c := "}"

b2 := f + uname + q + w + e + c
record(b2)
}

func record(recorded string) {
cache := []SVC{}
record SVC := recorded
appenda := append(cache, recorded)
}

最佳答案

您的类型 SVC 结构 有两个私有(private)字符串字段。如果您只需要一个字符串数组,则不需要 SVC 类型。

如果您只是想通过对主目录中的项目进行特殊格式转换来构建一个字符串数组,这里是一个展示附加和格式化字符串用法的开始:https://play.golang.org/p/eUKTKRxwfp

package main

import (
"fmt"
"io/ioutil"
"os"
"strings"
)

func main() {
os.Chdir("../../../../../../..")
var data, err = ioutil.ReadDir("home")
checkerr(err)
lines := []string{}
for _, data := range data {
fmt.Println(data.Name())
lines = append(lines, buildLine(data.Name()))
}
fmt.Println(strings.Join(lines, "\n"))
os.Chdir("home/beanboybunny/repos/bux/go/src/bux")
}

func checkerr(err1 error) {
if err1 != nil {
fmt.Printf("error: %v", err1)
}
}

func buildLine(dataname string) string {
return fmt.Sprintf("var %s = VVC{\n bux: 1,\n op: true,\n}", dataname)
}

关于arrays - GO:数组/slice 到常规字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36345957/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com