2009-09-24 19 views
9

サーバーからの応答をJSON形式で解析する必要があります。私はいくつかのグーグルを行っているが、私はライブラリや瓶のようなものを見つけることができません。Blackberry/J2MEでJSON応答を解析する方法は?

どこでもzipファイルとしてオープンソースコードが提供されています。

これをどのように達成できますか?ブラックベリー用の瓶がない場合は、そのオープンソースコードをアプリケーションでどのように使用するのですか?

答えて

9

open source JSON for J2ME API on Mobile and Embedded Application Developers Project

はまた、あなたが download JSON ME (Zip file) at JSON.org もうサポートされていないことができますがあります。しかし、それはhereから得ることができます。

json project srcフォルダの内容をBlackberryプロジェクトのsrcフォルダにコピーし、Eclipseのパッケージエクスプローラでリフレッシュしてビルドすることができます。

詳細については、を参照してください:この記事チェクUsing JavaScript Object Notation (JSON) in Java ME for Data Interchange

+2

はい、私たちはjson.orgからJSON MEコードを使用して、それは素晴らしい作品。あなたが言ったように、ソースコードを自分のソースコードツリーに抽出するだけで、あなたのアプリケーションにコンパイルされます。 –

+0

"JSON.orgでJSON ME(Zipファイル)をダウンロード"リンクが壊れています – paullb

+0

リンクを参照してください更新 –

3

あなたは、応答文字列を得たとき、このコードは

try { 
     JSONObject jsonres = new JSONObject(jsons); 
     System.out.println("Preview icon from jsonresp:"+jsonres.getString("mydata")); 
    } catch (JSONException ex) { 
     Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex); 
    } 

一つのjsonsを使用するには、あなたがJSONObjectからデータを取得することができるようにJSON形式でデータのあなたの鍵& MYDATAであるあなたの応答文字列です。私もJSONのジャーバージョンを探していました

http://pensivemode.fileave.com/verified_json.jar

(私のlibに沿ってリンクする)::

https://radheshg.wordpress.com/tag/json/

を、それはないようです

2

Thnksまた、試すことができますポータブル:

Building example 
C:\Program Files (x86)\Research In Motion\BlackBerry JDE 4.5.0\bin\rapc.exe -quiet import="C:\Program Files (x86)\Research In Motion\BlackBerry JDE 4.5.0\lib\net_rim_api.jar";lib\${PROJECT}.jar;lib\json.jar codename=example\example example\example.rapc warnkey=0x52424200;0x52525400;0x52435200 Y:\src\${PROJECT}-java.git\example\src\mypackage\MyApp.java Y:\src\${PROJECT}-java.git\example\src\mypackage\MyScreen.java 
tmp3139/org/json/me/JSONArray.class: Error!: Invalid class file: Incorrect classfile version 
Error while building project 

http://supportforums.blackberry.com/t5/Java-Development/JSON-library/m-p/573687#M117982

2

これまでのところ、JSON.simpleは素晴らしい実行可能オプションのように見えます。

JSONParser parser=new JSONParser(); 

    System.out.println("=======decode======="); 

    String s="[0,{\"1\":{\"2\":{\"3\":{\"4\":[5,{\"6\":7}]}}}}]"; 
    Object obj=parser.parse(s); 
    JSONArray array=(JSONArray)obj; 
    System.out.println("======the 2nd element of array======"); 
    System.out.println(array.get(1)); 
    System.out.println(); 
6

私はBlackberryクライアントアプリケーションを開発中で、同じ問題に直面しました。私はサーバーから取得する応答を解析するJSONの方法を探していました。私はEclipseプラグインをBBとしてIDEとして使用しています.BB SDKにはJSONのものも含まれています。

この質問への最も簡単な答えはということです:

は、最初は、このimportステートメントを使用することを忘れないでください:

import org.json.me.JSONObject; 

、文字列変数にサーバーからあなたのJSON形式の応答割り当てる:

String jsonStr = "{\"team\":\"Bursaspor\",\"manager\":\"Ertuğrul Sağlam\",\"year\":\"2010\"}"; 

JSONObjectを作成します。

JSONObject obj = new JSONObject(jsonStr); 

つまりあなたは、あなたがこのようなあなたのJSONObjectを使用する必要があります「ブルサスポル」である「チーム」フィールドの値を使用する場合:

obj.getString("team") 

この呼び出しは、「ブルサスポルある文字列値を返します。 "

P.S:このソリューションは、Android開発の同じ問題の解決方法を説明するサイトからインスピレーションを受けました。

http://trandroid.com/2010/05/17/android-ile-json-parse-etme-ornegi-1/

関連する問題