根据您提供的信息,可能是因为在调用WriteIniConfig
函数后,该函数会重新写入整个配置文件,覆盖原有的内容。所以导致除了"VNG_VXLAN"
项外,其他项都被清空了。
如果您只想更新或添加指定的项而不影响其他项,可以先读取整个配置文件到内存中(例如使用github.com/go-ini/ini
包),然后进行修改和更新,并最后保存回配置文件中。这样可以确保不会清空其他项。
示例代码如下:
import (
"github.com/go-ini/ini"
)
func UpdateIniConfig(file string, section string, key string, value string) error {
cfg, err := ini.Load(file)
if err != nil {
return err
}
cfg.Section(section).Key(key).SetValue(value)
err = cfg.SaveTo(file)
if err != nil {
return err
}
return nil
}
这样使用 UpdateIniConfig
函数来更新指定的项时,其他项将保持不变。请注意,在调用此函数之前,请确保已经安装了 github.com/go-ini/ini
包并正确导入它。
内容由零声教学AI助手提供,问题来源于学员提问