2016-10-11 13 views
-2

現在、Eclipseを使用してJavaでコーディングしています。データが与えられたときにキー「高」の値を取得しようとしていますウェブサイトAPIから取得したデータからキーを取得する方法

{"高": "639.00000"、 "最後": "634.94000"、 "タイムスタンプ": "1476220216"、 "入札" 「ボリューム」:「7939.75947138」、「低」:「613.83000」、「質問」:「636.50000」、「開く」:「616.37000」}

このアドレスから:

package JsonSimpleExample; 
import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.InputStreamReader; 
import java.net.URL; 
import java.net.URLConnection; 
import org.json.simple.*; 



public class JsonSimpleExample { 

    public static void main(String[] args) throws IOException { 

     URL url = new URL("https://www.bitstamp.net/api/v2/ticker/btcusd/"); 

     URLConnection con = url.openConnection(); 
     InputStream is =con.getInputStream(); 


     BufferedReader br = new BufferedReader(new InputStreamReader(is)); 

     System.out.println(br.readLine()); 

    } 
} 

可能な解決策は、私はウェブサイトの私からの取得データを書き込むことである:「https://www.bitstamp.net/api/v2/ticker/btcusd/

これまでのところ、私はこのコードを持ってファイルに入力し、各キーと値のペアをハッシュマップに入力して値を呼び出しますが、非常に冗長なようです。 APIが私に与えるデータでキーの値を直接取得する方法はありますか?

+0

ないAPIについての確認はできますが、単一の文字列にJSONオブジェクトを読んでブラケットを取り外し、コンマの周りに分割し、その配列を通過して、キーと値のペアを取得するために、コロンの周りにこれらの文字列を分割することができ? –

+0

このリンクはhttps://www.mkyong.com/java/json-simple-example-read-and-write-json/を助けてくれるかもしれません –

+1

@RAZ_Muh_Taz単純な文字列マッチングや正規表現。 JSONパーサーを使用します。これはJDKに付属しています。 http://www.oracle.com/technetwork/articles/java/json-1973242.html – Robert

答えて

0

シンプルにjsonライブラリも追加する必要があります。

import java.io.IOException; 
import java.net.MalformedURLException; 
import java.net.URL; 
import java.util.Scanner; 
import org.json.JSONObject; 

/** 
* 
* @author BTACTC 
*/ 
public class JsonExample { 

    URL url; 
    String str; 
    Scanner scan; 
    JSON json; 

    public JsonExample() throws MalformedURLException, IOException { 

     url = new URL("https://www.bitstamp.net/api/v2/ticker/btcusd/"); 

     scan = new Scanner(url.openStream()); 

     str = new String(); 

     while (scan.hasNext()) { 
      str += scan.nextLine(); 
     } 

     System.out.println(str);// checking the data is now in string 

     JSONObject obj = new JSONObject(str); 
     System.out.println(obj.getString("high"));; 

    } 

    public static void main(String[] args) throws IOException { 

     JsonExample JE = new JsonExample(); 

    } 

} 
+0

ありがとうございます。これはいくつかの変更を加えなければならなかったのです: –

+0

1.メソッドとメインの両方でJSONExceptionsを投げました。 2.私はJSON jsonをJSONML jsonに変更しなければならなかった それはその後完全に機能しました。 –

関連する問題