Heim > Backend-Entwicklung > Golang > Wie gehe ich mit codierten Unicode-Inhalten in JSON mit Go um?

Wie gehe ich mit codierten Unicode-Inhalten in JSON mit Go um?

Susan Sarandon
Freigeben: 2024-12-10 02:04:08
Original
631 Leute haben es durchsucht

How to Handle Encoded Unicode Content in JSON Using Go?

So gehen Sie mit codiertem Unicode-Inhalt um

Wenn Sie in einer JSON-Antwort auf rohen ASCII-Inhalt stoßen, handelt es sich möglicherweise um codierten Unicode-Inhalt. Um den Text ohne Anführungszeichen anzuzeigen, können Sie das JSON-Paket verwenden.

func main() {
    var i interface{}
    err := json.Unmarshal([]byte(src), &i)
    fmt.Println(err, i)
}

const src = `{"forum":{"id":"3251718","name":"\u5408\u80a5\u5de5\u4e1a\u5927\u5b66\u5ba3\u57ce\u6821\u533a","first_class":"\u9ad8\u7b49\u9662\u6821","second_class":"\u5b89\u5fbd\u9662\u6821","is_like":"0","user_level":"1","level_id":"1","level_name":"\u7d20\u672a\u8c0b\u9762","cur_score":"0","levelup_score":"5","member_num":"80329","is_exists":"1","thread_num":"108762","post_num":"3445881","good_classify":[{"class_id":"0","class_name":"\u5168\u90e8"},{"class_id":"1","class_name":"\u516c\u544a\u7c7b"},{"class_id":"2","class_name":"\u5427\u53cb\u4e13\u533a"},{"class_id":"4","class_name":"\u6d3b\u52a8\u4e13\u533a"},{"class_id":"6","class_name":"\u793e\u56e2\u73ed\u7ea7"},{"class_id":"5","class_name":"\u8d44\u6e90\u5171\u4eab"},{"class_id":"8","class_name":"\u6e29\u99a8\u751f\u6d3b\u7c7b"},{"class_id":"7","class_name":"\u54a8\u8be2\u65b0\u95fb\u7c7b"},{"class_id":"3","class_name":"\u98ce\u91c7\u5c55\u793a\u533a"}]}}`
Nach dem Login kopieren

Ausgabe:

<nil> map[forum:map[levelup_score:5 is_exists:1 post_num:3445881 good_classify:[map[class_id:0 class_name:全部] map[class_id:1 class_name:公告类] map[class_id:2 class_name:吧友专区] map[class_id:4 class_name:活动专区] map[class_id:6 class_name:社团班级] map[class_id:5 class_name:资源共享] map[class_id:8 class_name:温馨生活类] map[class_name:咨询新闻类 class_id:7] map[class_id:3 class_name:风采展示区]] id:3251718 is_like:0 cur_score:0
Nach dem Login kopieren

Wenn Sie ein bestimmtes Fragment lieber ohne Anführungszeichen versehen möchten, verwenden Sie strconv.Unquote():

fmt.Println(strconv.Unquote(`"\u7d20\u672a\u8c0b"`))
Nach dem Login kopieren

Ausgabe:

素未谋 <nil>
Nach dem Login kopieren

Beachten Sie, dass strconv.Unquote() eine Zeichenfolge erfordert in Anführungszeichen. Rohe String-Literale können verwendet werden, um solche Strings einzuschließen, wodurch verhindert wird, dass der Compiler Unicode-Escapezeichen interpretiert.

Das obige ist der detaillierte Inhalt vonWie gehe ich mit codierten Unicode-Inhalten in JSON mit Go um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage