Roh-Unicode-Kodierung: Eine Anleitung, um sie lesbar zu machen
Viele Web-API-Antworten enthalten JSON-Daten, die Roh-Unicode-Kodierung verwenden. Obwohl es schwierig sein kann, dieses Format zu entschlüsseln, kann es mit dem richtigen Ansatz lesbar gemacht werden.
Die Herausforderung:
Wenn eine Web-API eine solche Antwort zurückgibt, wird angezeigt Wenn der Textkörper mithilfe von Methoden wie fmt.Println() als Text ausgegeben wird, führt dies zu unlesbarem ASCII-Inhalt. Versuche, den Inhalt mit bufio.ScanRunes zu analysieren, schlagen ebenfalls fehl.
Die Lösung: Unicode-Dekodierung
Um die rohe Unicode-Kodierung zu dekodieren und den Inhalt lesbar zu machen, empfehlen wir die Verwendung ein JSON-Decoder. Der bereitgestellte Beispielcode zeigt, wie dies erreicht werden kann:
func main() { var i interface{} err := json.Unmarshal([]byte(`<RESPONSE_BODY>`), &i) fmt.Println(err, i) }
Durch das Unmarshaling des Antworttexts in eine Schnittstelle{} konvertiert der JSON-Decoder die Unicode-Escapezeichen automatisch in die entsprechenden Zeichen.
Alternativer Ansatz: Manuelle Dekodierung
Wenn Sie einen direkteren Ansatz bevorzugen, können Sie bestimmte Fragmente von dekodieren die Unicode-codierte Zeichenfolge manuell mit der Funktion strconv.Unquote():
fmt.Println(strconv.Unquote(`"\u7d20\u672a\u8c0b"`))
Denken Sie daran, die Unicode-codierte Zeichenfolge in doppelte Anführungszeichen zu setzen, wenn Sie strconv.Unquote() verwenden, und stellen Sie sicher, dass Sie eine Rohzeichenfolge verwenden Literale, um zu verhindern, dass der Compiler die interpretiert entkommt.
Fazit:
Durch den Einsatz der oben beschriebenen Techniken können Sie rohe Unicode-codierte Inhalte effektiv dekodieren und lesbar machen. Dies eröffnet die Möglichkeit der weiteren Verarbeitung und Analyse der abgerufenen JSON-Daten.
Das obige ist der detaillierte Inhalt vonWie kann ich Unicode-kodierte JSON-Rohdaten lesbar machen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!