Web サイトで提供されたデータがあり、次の図のように表示されます。
この Web サイトでは、定期的に更新されるいくつかのパラメーターの値を提供しています。Androidアプリの列名と行番号に従ってこれらのデータを取得したいので、http接続を開く方法を知っています。しかし、残念ながら、どこから始めるべきか、画像で提供されているデータを読み取る方法がわかりません。
作業する特別なデータ ソースがない限り、Web サイトのコンテンツを読み取って手動で処理する必要があります。これは、URL 接続から読み取る方法に関するJava チュートリアルのリンクです。
import java.net.*;
import java.io.*;
public class URLConnectionReader {
public static void main(String[] args) throws Exception {
URL oracle = new URL("http://www.oracle.com/");
URLConnection yc = oracle.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(
yc.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
}
}
編集:
プロキシの背後にいる場合は、これらのシステム プロパティも (適切な値に) 設定する必要があります。
System.setProperty("http.proxyHost", "3.182.12.1");
System.setProperty("http.proxyPort", "1111");
データがクリア テキストのみで、テーブルの形式が変わらない場合は、テーブル全体を解析できます。たとえば、「------- ...」行を読み取った後、スキャナーを使用して値を解析できます。
Scanner s;
while ((inputLine = in.readLine()) != null)
{
s = new Scanner(input).useDelimiter(" ");
//Then readthe Values like
value = s.next()); // add all values in a list or array
}
s.close();
コンテンツ全体を解析する必要があります。このデータを取得するために Web サービスを呼び出すことはできませんでしたか、またはこのビューに属するデータベースを直接呼び出すことはできませんでしたか?