Heim > Backend-Entwicklung > Golang > Wie kann ich JSON-Rohdaten mit Unicode-Escape in Go lesbar machen?

Wie kann ich JSON-Rohdaten mit Unicode-Escape in Go lesbar machen?

DDD
Freigeben: 2024-12-05 19:28:11
Original
687 Leute haben es durchsucht

How Can I Make Raw Unicode-Escaped JSON Data Readable in Go?

Wie mache ich rohe Unicode-codierte Inhalte lesbar?

Beim Anfordern von JSON-Daten von einer Web-API stoßen Sie möglicherweise auf rohe ASCII-Inhalte, die erscheint als Unicode-Escapezeichen. Während die Verwendung von bufio.ScanRunes zum Parsen der Antwort fehlschlägt, kann die Dekodierung der Antwort mit Tools wie dem JSON-Paket oder strconv.Unquote die Unicode-Escapezeichen effektiv in lesbaren Text umwandeln.

Detaillierte Erklärung:

Die in der Frage bereitgestellten JSON-Daten enthalten Unicode-Zeichen, die durch Backslash-Escapezeichen dargestellt werden, wie z. B. u5408 und u672a. Um diese Escapezeichen zu dekodieren und die tatsächlichen Unicode-Zeichen anzuzeigen, können wir die folgenden Methoden verwenden:

  • JSON-Paket (json): JSON unterstützt die automatische Dekodierung von Unicode-Escapezeichen beim Unmarshaling von JSON-Daten . Hier ist ein Beispiel:
package main

import (
    "encoding/json"
)

func main() {
    var i interface{}
    err := json.Unmarshal([]byte(`{"name": "\u5408\u80a5"}`), &i)
    fmt.Println(err, i)
}
Nach dem Login kopieren

Ausgabe (versuchen Sie es auf dem Go Playground):

<nil> map[name:同学]
Nach dem Login kopieren
  • strconv.Unquote: Zum Aufheben von Anführungszeichen Für kleinere Fragmente von Unicode-codiertem Text kann strconv.Unquote verwendet werden. Es erwartet eine in Anführungszeichen eingeschlossene Zeichenfolge, wie unten gezeigt:
fmt.Println(strconv.Unquote(`"\u7d20\u672a\u8c0b"`))
Nach dem Login kopieren

Ausgabe (versuchen Sie es auf dem Go Playground):

素未谋
Nach dem Login kopieren

Denken Sie daran, dass strconv.Unquote das erfordert Zeichenfolge, die in Anführungszeichen eingeschlossen werden soll. Dies wird mithilfe eines rohen Zeichenfolgenliterals ( ` ) erreicht, um zu verhindern, dass der Compiler die Anführungszeichen für die Escapezeichen selbst aufhebt.

Das obige ist der detaillierte Inhalt vonWie kann ich JSON-Rohdaten mit Unicode-Escape in Go lesbar machen?. 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage