-
Notifications
You must be signed in to change notification settings - Fork 145
Open
Description
从另外一个项目抄过来的。
package wxpay import ( "bytes" "encoding/json" "encoding/xml" "io" ) // ToJSON 转化成JSON字符 func (p Params) ToJSON() string { mjson, _ := json.Marshal(p) return string(mjson) } // Decode XML解码 func Decode(r io.Reader) Params { var ( d *xml.Decoder start *xml.StartElement params Params ) d = xml.NewDecoder(r) params = make(Params) for { tok, err := d.Token() if err != nil { break } switch t := tok.(type) { case xml.StartElement: start = &t case xml.CharData: if t = bytes.TrimSpace(t); len(t) > 0 { params.SetString(start.Name.Local, string(t)) } } } return params } // Encode XML编码 func Encode(params Params) io.Reader { var buf bytes.Buffer buf.WriteString(``) for k, v := range params { buf.WriteString(`<`) buf.WriteString(k) buf.WriteString(`>`) } buf.WriteString(``) return &buf }
neefrankie, amesy and johntaiii
Metadata
Metadata
Assignees
Labels
No labels