39 lines
536 B
Markdown
39 lines
536 B
Markdown
Bencode encoding/decoding sub package. Uses similar API design to Go's json package.
|
|
|
|
## Install
|
|
|
|
```sh
|
|
go get github.com/anacrolix/torrent
|
|
```
|
|
|
|
## Usage
|
|
|
|
```go
|
|
package demo
|
|
|
|
import (
|
|
bencode "github.com/anacrolix/torrent/bencode"
|
|
)
|
|
|
|
type Message struct {
|
|
Query string `json:"q,omitempty" bencode:"q,omitempty"`
|
|
}
|
|
|
|
var v Message
|
|
|
|
func main(){
|
|
// encode
|
|
data, err := bencode.Marshal(v)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
//decode
|
|
err := bencode.Unmarshal(data, &v)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
fmt.Println(v)
|
|
}
|
|
```
|