6
各行がJSONであるログファイルがあります。何らかのnginxのセキュリティ上の理由から、ログは16進形式で保存されている(例えば文字「X22を\に変換されます)ここではJSONラインの例です。Go - txtファイルをデコード/変換する方法は16進数の文字列を読み込み可能な文字列に変換する
{ "body_bytes_sent": "474", "params": {\x22device_id\x22: \x221234567890\x22} }
私の目標:
- 行毎にファイルを読み込みます。
このSTR変換
{ "body_bytes_sent": "474", "params" : {"device_id": "1234567890"} }
読める形式に各行を変換します私はそれを操作することができますJSONオブジェクトに入れて。
助けてください。
ありがとう!それは私に私の質問を説明したケースの解決策を与えますが、文字列が有効なJSONと無効なJSONが混在している場合は解決しません。更新された質問を参照してください。再度、感謝します!ところで、これはnginxがリクエストボディparamsだけをエンコードするために起こります。 – Asaf
@Asaf:Not_a_Golferのコードが「有効なJSONと無効なJSONの組み合わせ」で失敗しないのはなぜですか? – Volker
@Not_a_Golferのコードを実行すると、この行にエラーが発生しました。エラー:strconv.Unquote(fmt.Sprintf( "%s"、qs)) ' – Asaf