ホームページ  >  記事  >  バックエンド開発  >  Go で JSON アンマーシャリングのために UTF-8 文字列をバイト配列に変換する方法

Go で JSON アンマーシャリングのために UTF-8 文字列をバイト配列に変換する方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-30 13:27:04260ブラウズ

How to Convert UTF-8 Strings to Byte Arrays for JSON Unmarshaling in Go?

JSON アンマーシャリングのために UTF-8 文字列をバイト配列に変換する

JSON 文字列をアンマーシャリングするには、バイト配列 ([]byte) を指定された関数への入力として使用します。この記事では、この目的のために UTF-8 文字列を []byte に変換する方法について説明します。

方法 1: 直接型変換

The Goこの言語では、単純な型キャストを使用して文字列を []byte に直接変換できます:

s := "some text"
b := []byte(s) // b is of type []byte

このメソッドは言語仕様で認可されており、文字列を []byte は、文字列の個々のバイトを含むスライスになります。

方法 2: json.NewDecoder() で io.Reader を使用する

あるいは、

io.Readerjson.NewDecoder() とともに利用することもできます。提供された io.Reader は、コピーを作成せずに文字列から読み取り、プロセスを最適化します。

s := `{"somekey":"somevalue"}`

var result interface{}
err := json.NewDecoder(strings.NewReader(s)).Decode(&result)
このメソッドは、文字列の内容を

[ にコピーするオーバーヘッドを回避します。 ]byte、より大きな JSON テキストに適しています。

注: 小さな JSON 文字列の場合、[]byte(s) を使用した直接型変換は次のとおりです。

結論

この記事では、UTF-8 文字列を

[]byte に変換する 2 つの方法を示します。 JSON アンマーシャリング: 直接型キャストし、json.NewDecoder()io.Reader を使用します。採用する適切な方法は、特定のユースケースとデータ サイズによって異なります。

以上がGo で JSON アンマーシャリングのために UTF-8 文字列をバイト配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。