2013-03-13 34 views
-3

我是新來的使用JSON,我發現所有的庫和這樣的混淆。我搜索了一些論壇,無法重新設計我看到的任何示例。需要一點幫助閱讀在Java中的JSON

我需要做的是從存儲在服務器上的.json文件中提取一定數量的數字。我有這個功能的工作,但它可能不得不改變,取決於我是否可以使用json工具字符串。無論如何,我需要解析json的版本號碼並保存,以便我可以將它們與存儲的版本號進行比較。

while循環將json的每一行存儲到一個字符串中。在此之後我迷路了:/我一直在嘗試使用GSON庫。

1)循環是否正常工作?或者我需要改變它,例如,數據存儲在json對象中? 2)我可以直接從服務器上的json獲取我需要的版本號嗎?不必採取整個文件,然後從那裏工作?

我只是需要一些基本的三分球上手, 預先感謝您

+0

你沒有向我們展示循環。向我們展示您的JSON和您的代碼。 – 2013-03-13 21:25:42

回答

0

大部分JSON庫將解析(讀成JSON對象)爲您服務。所以你手動打開這個文件,然後把每一行讀成一個字符串,那麼你可能在這裏做了太多的工作。

如果你想讀一個文件中GSON你可以這樣做:

Reader reader = new FileReader("someFile.json"); 
try { 
    GSON gson = new GSON(); 
    SomeObject obj = gson.fromJson(reader, SomeObject.class); 
} finally { 
    reader.close(); 
} 

這將解析該文件中的JSON和JSON中的值綁定到該對象。這是一個關於如何工作的深刻主題。我建議你去閱讀GSON文檔。如果您發現這些反序列化程序很難使用,則可以使用json.org提供的JSONObject源代碼。它會將JSON解析爲你自己的對象的通用JSON對象,然後你可以在那裏挖掘並找到你想要的東西。但是,你會閱讀整個文件。