2010-06-12 52 views
0

我有一個php查詢從表中返回以下JSON格式。mySql表返回需要爲iPhone格式化的JSON UITableview

[{"memberid":"18", 
"useridFK":"30", 
"loginName":"Johnson", 
"name":"Frank", 
"age":"23", 
"place":"School", 
}, 

它需要的格式如下:

[{"memberid":"18" { 
        "useridFK":"30", 
        "loginName":"Johnson", 
        "name":"Frank", 
        "age":"23", 
        "place":"School",} 
        }, 

我可以找出哪裏/如何轉換這一點,會在哪裏我創建以下格式: (1)在PHP的回報? (2)反序列化的JSON指令?或(3)Obj-C編碼指令的一些激勵?

我的最終用途是使用NSObject的簡單Drill Down表格,所以當我選擇「memberid」行時,我將在下一個UITableview上獲取子/明細列表。

我Data.plist將如下所示:提前

Root:     Dictionary 
     V Rows:   Array 
     V Item 0:  Dictionary 
      Title:  String   18 
      V Children  Array 
      V Item 0  Dictionary 
       Title  String   30 
    etc. 

謝謝,這個網站的岩石。

回答

1

我敢肯定,它只是一個錯字,但對於初學者 - >

[{"memberid":"18" { 
        "useridFK":"30", 
        "loginName":"Johnson", 
        "name":"Frank", 
        "age":"23", 
        "place":"School",} 
        }, 

是無效的,需要有一個逗號「18」

反正後,更容易修復php輸出你想要的JSON,而不是在Objective-C中重新組織它。一旦你真的從響應中獲得了JSON,你可能需要手動解析它,這不是太糟糕,或者使用庫(la http://code.google.com/p/json-framework/)。

iPhone上的大多數通信都是使用NSXMLParser或libXML而不是JSON完成的。這兩條路線同樣多毛,因爲iPhone處理遞歸事件驅動的XML解析器(大多數人都不熟悉)並且沒有對JSON的本機支持(這更易於閱讀)。

如果JSON不適合你,並且你最終轉向使用XML,請查找事件驅動的解析,它需要一些工作來設置,但是一旦它實際運行就會非常快。

+0

我的應用程序的其餘部分做反序列化罰款,但它認爲,如果我以正確的格式得到傳入的JSON,它會正確地轉換爲數組格式,你知道什麼格式上面被稱爲?這將有助於我的追求。 Michael – 2010-06-12 19:33:14

+0

我們要用php – 2010-06-19 04:02:20

+0

打算用php,謝謝 – 2010-06-19 04:03:01