1
小さな問題があります。 私のアプリケーションには、遅延読み込み画像とJson値を格納するデータベースがあります。 データベースに値を格納することができましたが、格納することができません。2つの異なる方法からデータベースを挿入する方法
これは、データベースにとして保存されます。
どのようにしてすべてのエントリをデータベースの先頭から始めることができますか。
ベローが私のコードです。
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
placeData = new DBHelper(this);
try {
Images("1","http://media.rightmove.co.uk/31k/30471/29462938
/30471_FLE100159_IMG_00_0002_max_200x138.jpg");
Images("2","http://media.rightmove.co.uk/3k/2265/35402969
/2265_9897_IMG_00_0000_max_200x138.jpg");
Images("3","http://media.rightmove.co.uk/75k/74944/18863829
/74944_OSI1000044_IMG_00_0000_max_200x138.jpg");
} catch (Exception e) {
}
try {
JSONArray properties = null;
JSONParser jParser = new JSONParser();
JSONObject json = jParser.getJSONFromUrl(url);
try {
// Getting Array of Contacts
properties = json.getJSONArray(TAG_PROPERTY);
// looping through All Contacts
for (int i = 0; i < properties.length(); i++) {
JSONObject c = properties.getJSONObject(i);
String identifier = c.getString(TAG_IDENTIFIER);
String price = c.getString(TAG_PRICE);
String bedrooms = c.getString(TAG_BEDROOMS);
String address = c.getString(TAG_ADDRESS);
String propertyType =
c.getString(TAG_PROPERTYTYPE);
id = id;
if (properties != null) {
// insert to database
insertData(id,identifier, price, bedrooms,
address,propertyType);
}
}
} catch (Exception e) {
}
} catch (Exception e) {
}
}
private void insertData(String id,String identifier, String price,
String bedrooms,String address, String propertyType) {
// TODO Auto-generated method stub
SQLiteDatabase db = placeData.getWritableDatabase();
ContentValues v = new ContentValues();
v.put(DBHelper.C_ID, id);
v.put(DBHelper.C_IDENTIFIER, identifier);
v.put(DBHelper.C_PRICE, price);
v.put(DBHelper.C_BEDROOMS, bedrooms);
v.put(DBHelper.C_ADDRESS, address);
v.put(DBHelper.C_PROPERTYTYPE, propertyType);
db.insert(DBHelper.TABLE, null, v);
db.close();
}
private void Images(String id, String url) throws ClientProtocolException,
IOException {
// TODO Auto-generated method stub
DefaultHttpClient mHttpClient = new DefaultHttpClient();
HttpGet mHttpGet = new HttpGet(url);
HttpResponse mHttpResponse = mHttpClient.execute(mHttpGet);
if (mHttpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
HttpEntity entity = mHttpResponse.getEntity();
if (entity != null) {
// insert to database
insert(id, EntityUtils.toByteArray(entity));
}
}
}
private void insert(String id, byte[] image) {
// TODO Auto-generated method stub
SQLiteDatabase db = placeData.getWritableDatabase();
ContentValues v = new ContentValues();
v.put(DBHelper.C_ID, id);
v.put(DBHelper.C_PHOTOS, image);
db.insert(DBHelper.TABLE, null, v);
db.close();
}
任意のヘルプやアドバイスがappreciated.Thanksあなたはどのような順序で「店のそれをしないでください
ランディのおかげで、データベース内のエンティティは、ある特定の財産に属し、私のAINはorder..yesであなたの権利を表示することですが、これは正しい順序を返すことができます。 – SomCollection
一般的に、はい - あなたの出力がどのように見えるかの例を追加してください... – Randy
ありがとうランディー、私が必要とする出力はsimple.the id:1はimage1、identifer1とprice1を持つでしょう。私はすぐにそれを実装します。 – SomCollection