Goで解析エラーなしでバイトスライスをIntスライスに変換するにはどうすればよいですか?

DDD
リリース: 2024-11-23 21:25:18
オリジナル
865 人が閲覧しました

How to Convert a Byte Slice to an Int Slice in Go Without Parsing Errors?

バイト スライスを Int スライスに変換: 解析エラーを解決する

Go では、バイト スライスを int に変換するには慎重な検討が必要です。従来の方法ではバイト スライスを文字列に変換してから strconv.Atoi を使用しますが、この方法では解析エラーが発生する可能性があります。

var d = []byte{0x01}
val, err := strconv.Atoi(string(d))
ログイン後にコピー

バイト スライスには生のバイト値が含まれているため、上記のコードはエラーになります。 ASCII 文字 (49) ではなく (1)。

正解アプローチ:

バイト スライスを int スライスに変換するには、次の手順を実行します。

byteSlice := []byte{1, 2, 3, 4}
intSlice := make([]int, len(byteSlice))
for i, b := range byteSlice {
    intSlice[i] = int(b)
}
ログイン後にコピー

このコードは、バイト スライス内の各バイト値を反復処理して、バイト値を int スライスに変換します。整数。結果の intSlice には、バイト値の対応する整数表現が含まれます。

このニュアンスを理解することで、開発者は解析エラーを回避し、Go でバイト スライスを int スライスに効率的に変換できます。

以上がGoで解析エラーなしでバイトスライスをIntスライスに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート