0

すべての行がフェッチされ、一度に各行が Android クライアントに渡されるときに、テーブルからデータを読み取っています。

ここで、このデータを読みながらフォーマットする必要があります。つまり、4 つの列データのそれぞれを Android 側の個別の文字列変数に格納して、テキスト ビューで表示できるようにします。

各行のデータを一度に送信しないと、テーブル データ全体が 1 つの文字列に連結され、Android クライアントに渡されます。

これをより効率的にするためのヒントとこれを解決する手がかりがあれば、もっと明確にする必要がある場合は、それを求めてください。

4

1 に答える 1

0

私はこれを逆にします。あなたのデバイスに送信する前に、これをフォーマットします。JSON形式のようなものとこのようなものを使用してください

package com.switchingbrains.json;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.StatusLine;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;

import android.util.Log;

public class JSONHelper {

    // Load JSON from URL
    public String JSONLoad(String url) {

        StringBuilder builder = new StringBuilder();
        HttpClient client = new DefaultHttpClient();
        HttpGet httpGet = new HttpGet(url);

        try {
            HttpResponse response = client.execute(httpGet);
            StatusLine statusLine = response.getStatusLine();
            int statusCode = statusLine.getStatusCode();
            if (statusCode == 200) {
                HttpEntity entity = response.getEntity();
                InputStream content = entity.getContent();
                BufferedReader reader = new BufferedReader(new InputStreamReader(content));
                String line;
                while ((line = reader.readLine()) != null) {
                    builder.append(line);
                }
            } else {
                Log.e(Main.class.toString(), "Failed to download file");
            }
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

        return builder.toString();

    }

}

JSONObjectにロードできる文字列を取得し、それを使って何でもできます。

于 2012-08-31T08:25:28.437 に答える