title: How to convert XML data into JSON data in Go?
body: <p>I want to create JSON object from a XML document in Go. Right now what I am doing is getting the XML data in struct object using xml.Unmarshall function and then programmatically format a string in JSON structure using fmt.Sprintf function.</p>
  
  <p>This code is not readable and I feel some better way should be there to do it. Can someone please suggest something better.</p>
  
  <p>My current code is</p>
  
  <pre><code>var root Root
  _ = xml.Unmarshal(data, &amp;root)
  
  fmt.Fprintln(w, fmt.Sprintf("{\"type\": \"%s\", \"action\": \"save\", \"entry\": {\"ads_enabled\": 1, \"comments_enabled\": 0, \"cover_headline\": \"%s\", }}",
              root.Type,
              root.SeoHeadline, //coverheadline           ))
  
  type Root struct {
      Type                 string `xml:"type,attr"    json:"type"`
      CoverHeadline        string `xml:"Head&gt;PageHeadline&gt;p" json:"cover_headline"`
  }
  </code></pre>
  
  <p>where data is byte[] object</p>
  
  <p>Thanks</p>