Sem descrição

Tao Wen 160fdc6584 update README há 10 anos atrás
LICENSE 923358c07e Initial commit há 10 anos atrás
README.md 160fdc6584 update README há 10 anos atrás
any.go 3e47c79b7e fix any há 10 anos atrás
any_test.go 2895fe2215 make any easier to work with há 10 anos atrás
jsoniter.go 3e47c79b7e fix any há 10 anos atrás
jsoniter_adapter.go 9873b4d32c support customize reflection há 10 anos atrás
jsoniter_any_test.go 3e47c79b7e fix any há 10 anos atrás
jsoniter_array_test.go f98c2a4150 support WhatIsNext há 10 anos atrás
jsoniter_base64_test.go 76bf0defae #2 fix reuse buffer há 10 anos atrás
jsoniter_bool_test.go ce5b193569 support null/true/false há 10 anos atrás
jsoniter_customize_test.go b0b1af4b3b rename há 10 anos atrás
jsoniter_demo_test.go 3e47c79b7e fix any há 10 anos atrás
jsoniter_find_end_test.go 46d96fb105 optimize skip há 10 anos atrás
jsoniter_float_test.go ec19f6de6a optimize read float há 10 anos atrás
jsoniter_int_test.go 5488b122cd merge lexer with iterator há 10 anos atrás
jsoniter_io_test.go 5488b122cd merge lexer with iterator há 10 anos atrás
jsoniter_large_file_test.go ce5b193569 support null/true/false há 10 anos atrás
jsoniter_map_test.go c352559e52 fix unsafe reference há 10 anos atrás
jsoniter_nested_test.go ce5b193569 support null/true/false há 10 anos atrás
jsoniter_null_test.go ce5b193569 support null/true/false há 10 anos atrás
jsoniter_object_test.go 44a65aa13a remove callback api há 10 anos atrás
jsoniter_reflect.go c352559e52 fix unsafe reference há 10 anos atrás
jsoniter_reflect_test.go 7e295ba1a5 decode []byte using ReadBase64 há 10 anos atrás
jsoniter_skip_test.go 46d96fb105 optimize skip há 10 anos atrás
jsoniter_string_test.go aa42ac95c0 implement any api há 10 anos atrás

README.md

jsoniter (json-iterator) is fast and flexible JSON parser available in Java and Go

Why jsoniter?

  • Jsoniter is the fastest JSON parser, it could be up to 10x faster than normal parser, data binding included (shameless self benchmark)
  • Having a developer friendly api is our #1 prioprity, you can choose from bind-api, any-api or iterator-api or all of them (checkout your api choices)
  • Unique iterator api can iterate through JSON directly, zero memory allocation! (see how iterator works)

1 Minute Tutorial

Given this JSON document [0,1,2,3]

Parse with Go bind-api

import "github.com/json-iterator/go"
iter := jsoniter.ParseString(`[0,1,2,3]`)
val := []int{}
iter.Read(&val)
fmt.Println(val[3])

Parse with Go any-api

import "github.com/json-iterator/go"
iter := jsoniter.ParseString(`[0,1,2,3]`)
val := iter.ReadAny()
fmt.Println(val.Get(3))

Parse with Go iterator-api

import "github.com/json-iterator/go"
iter := ParseString(`[0,1,2,3]`)
total := 0
for iter.ReadArray() {
    total += iter.ReadInt()
}
fmt.Println(total)

How to get

go get github.com/json-iterator/go

Contribution Welcomed !

Report issue or pull request, or email taowen@gmail.com, or Gitter chat