登录
首页 >  Golang >  Go问答

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

来源:stackoverflow

时间:2024-03-16 13:00:24 153浏览 收藏

**文章首段摘要:** 在 Go 语言中,本文介绍了如何将从 result 变量获取的数据注入到 result1 变量中。为了将一个 JSON 文件中的数据复制到另一个 JSON 文件中,首先将两个文件的内容转换为映射。然后,通过遍历 result 中的数据,可以将数据复制到 result1 中。最后,将更新后的 result1 映射写入目标 JSON 文件。这个过程允许在两个不同的 JSON 文件之间传输数据,从而实现数据的集成和操作。

问题内容

  1. terraform.tfstate 是输入文件,packageservicelist.tf.json 是输出文件。
  2. 两者都转换为地图文件
  3. 我遍历的数据存储在result中,我想将数据从result复制到result1。
  4. will write 操作在这里起作用。如果是 。怎么办?
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的内容将被写入。

到这里,我们也就讲完了《如何在golang中将从result(var)获得的数据注入到result1(var)》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>