gob をファイルに書き込む必要がある go プログラムを作成しています。.String() メソッドを使用してゴブを文字列に変換しました。
var network bytes.Buffer
encoder := gob.NewEncoder(&network)
_ = encoder.Encode(valueToEncode)
gobString := network.String()
次に、ゴブをファイルに書き込み、後で取得してこのプログラムに送信します。
var filebytes = []byte(file) //i think that these two lines are the issue
network := bytes.NewBuffer(filebytes)
decoder := gob.NewDecoder(network)
var decoded interface{}
_ := decoder.Decode(&decoded)
しかし、これを実行すると、次のエラーが表示されます。
gob: エンコードされた符号なし整数が範囲外です
問題は、デコーダ プログラムの最初の 2 行にあると思います。では、ゴブを正しくデコードするには何を入れればよいでしょうか?
編集: 私が欲しいのは、gobString の .UnString() メソッドです。どうすればそれを達成できますか?