转换具有单个混合数据类型数组的单个字符串

如何转换其中包含单个字符串数组的单个字符串。


func main() {

  stringArrayInString := "[\"Hello\",\"Hai\",\"How are you!\"]" //Single string which has string array in it

    fmt.Println(stringArrayInString)


 // code to convert to the string array

 // convertedString

}

输出必须是这样的


convertedString[0] = "Hello"

convertedString[1] = "Hai"

convertedString[2] = "How are you!"

如果上面的输入字符串有 int、string、JSON 类型等混合数据类型是否可以


stringArrayInString := "[\"Hello\",\"{\"msg\":\"Hai\"}\",123]"


//after converting


convertedString[0] = "Hello"

convertedString[1] = "{\"msg\":\"Hai\"}"

convertedString[2] = 123


狐的传说
浏览 60回答 1
1回答

慕运维8079593

您拥有的字符串数组是一个有效的 JSON 数组,因此您可以执行以下操作:var convertedString []stringjson.Unmarshal([]byte(str),&convertedString)如果该数组中有多种数据类型,则可以使用字符串数组来做到这一点,您需要一个 interface{} 数组:var convertedData []interface{}json.Unmarshal([]byte(str),&convertedData)然后,您需要检查该数组中各个元素的类型以找出它们是什么。
打开App,查看更多内容
随时随地看视频慕课网APP