如何在 golang 中将从 result(var) 获得的数据注入到 result1(var)


  1. terraform.tfstate是输入文件,packageservicelist.tf.json是输出文件。
  2. 两者都被转换为地图文件
  3. 我遍历的数据存储在结果中,我想将数据从结果复制到结果1。
  4. 将写入操作在这里工作。如果是.如何?
package main
import (  
"fmt"
"io/ioutil"
"encoding/json"
)
func main() {  
//File Reading terraform.tfstate
data, err := ioutil.ReadFile("terraform.tfstate")
if err != nil {
//fmt.Println("File reading error", err)
return
}
// Map is save in m
m := make(map[string]interface{})
json.Unmarshal(data, &m)
result:= m["resources"].([]interface{})[0].(map[string]interface{})["instances"].([]interface{})[0].(map[string]interface{})["attributes"].(map[string]interface{})["packaged_service_list"].([]interface{})[0].(map[string]interface{})["package_service"]
fmt.Println(result)
//File Reading packageservicelist.tf.json
data1, err :=ioutil.ReadFile("./linear/packageservicelist.tf.json")
if err != nil {
fmt.Println("File reading error", err)
return
}
m1 := make(map[string]interface{})
json.Unmarshal(data1, &m1)
fmt.Println("n")
result1:= m1["resource"].(map[string]interface{})["api_packageservicelist"].(map[string]interface{})["packageservicelist"].(map[string]interface{})["packaged_service_list"].(map[string]interface{})["package_service"]
fmt.Println(result1)



}

resultresult1都具有来自不同来源的密钥package_service的值。你想放result而不是result1.他们,你必须写到那个键:

m1["resource"].(map[string]interface{})["api_packageservicelist"].(map[string]interface{})["packageservicelist"].(map[string]interface{})["packaged_service_list"].(map[string]interface{})["package_service"]=result

然后,当您写入m1时,将写入第一个文件中package_service的内容。

相关内容

  • 没有找到相关文章

最新更新