代码之家  ›  专栏  ›  技术社区  ›  tomute

Objective-C的JSON解析器比较(JSON Framework、YAJL、TouchJSON等)

  •  141
  • tomute  · 技术社区  · 16 年前

    据我所知,Objective-C有三个JSON解析器, JSON Framework , YAJL ,和 Touch JSON . 那么,这三者就有了各自的特点。

    例如:
    YAJL可以用作SAX风格的解析器。
    JSON框架历史悠久,应用广泛。
    Touch JSON解析NSData而不是NSString。

    另外,据我测试,性能对比结果如下:
    [快速] 雅居乐>JSON框架>触摸JSON [慢]。


    最后,如果你知道其他JSON解析器,请告诉我。

    7 回复  |  直到 6 年前
        1
  •  59
  •   johne    15 年前

    如果你在追求速度,看看 JSONKit . 它(通常)比前面提到的JSON库快得多,通常快一个数量级。而且由于它是“最近实例化的对象缓存”,所以它也会(同样,通常)使用更少的内存。

        2
  •  12
  •   bontoJR    14 年前

    考虑到 a comparison that I did ,最快的库是JSONKit,其次是NSJSONSerialization(现在的公共API)和NextiveJSON。SBJSON和TouchJSON比前3个库慢一点。

    这一比较是使用iphone4s和ios5.0.1进行的。

        3
  •  5
  •   tkanzakic Wolfgang    13 年前

    this parser :

    我不记得我是怎么偶然发现这个的,但是它看起来很轻很简单,所以我认为它适合我的需要。我将它分叉,以便从NSData添加初始化。

        4
  •  3
  •   MobileGeek    13 年前

    我认为JSONKit比YAJL快,YAJL比touchjson快,IOS5类NSJSONSerialization类快得多。 NSJSONSerialization 不需要使用任何第三方API。

        5
  •  2
  •   Stunner    10 年前
        6
  •  0
  •   NANNAV gngrwzrd    13 年前

    如果您正在寻找从NSObject到JSON的序列化程序,反之亦然,那么您可能需要签出 OBJC JSONSerializer

        7
  •  0
  •   NANNAV gngrwzrd    13 年前

    为什么不看看akosma在解析器上的基准测试,他比较了不同类型的解析器。如果缺少一个解析器,您不妨将其添加到测试中,因为他的代码是开源的。

    iPhoneWebServicesClient