问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

android怎么从数据库读取一条数据赋值给字符串

发布网友 发布时间:2022-04-22 01:35

我来回答

1个回答

热心网友 时间:2023-09-16 22:17

您好,请您把SimpleCursorAdapter全部替换掉:
DatabaseActivity.java

package com.poqop.database;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import android.app.Activity;
import android.database.Cursor;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.widget.CursorAdapter;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.widget.Toast;

import com.poqop.R;

public class DatabasesActivity extends Activity {
public LayoutInflater m;
ListView listView;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.maintable);

DBAdapter db = new DBAdapter(this);

try {
String destPath = "/data/data/" + getPackageName() +
"/databases";
File f = new File(destPath);
if (true) {//!f.exists()) {
f.mkdirs();
f.createNewFile();

//---copy the db from the assets folder into
// the databases folder---
CopyDB(getBaseContext().getAssets().open("mydb"),
new FileOutputStream(destPath + "/MyDB"));
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
listView=(ListView)findViewById(R.id.show3);
db.open();
for(int a=1;a<=3;a++)
{

int rowID=a;
Cursor c = db.getTitle(rowID);
if (c.moveToFirst())
inflateList(c);

else
Toast.makeText(this, "No title found",
Toast.LENGTH_LONG).show();

}
db.close();
}

public void CopyDB(InputStream inputStream,
OutputStream outputStream) throws IOException {
//---copy 1K bytes at a time---
byte[] buffer = new byte[1024];
int length;
while ((length = inputStream.read(buffer)) > 0) {
outputStream.write(buffer, 0, length);
}
inputStream.close();
outputStream.close();
}

public void inflateList(Cursor c)
{
// 填充SimpleCursorAdapter
SimpleCursorAdapter adapter = new SimpleCursorAdapter(
DatabasesActivity.this,
R.layout.line, c,
new String[] { "_id", "name","email" }
, new int[] {R.id.my_title, R.id.my_content,R.id.my_content2},
CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER); //③
// 显示数据
listView.setAdapter(adapter);
}
}

DBAdapter.java

package com.poqop.database;

import java.util.HashMap;

import com.poqop.R;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class DBAdapter
{
public static final String KEY_ROWID = "_id";
public static final String KEY_NAME = "name";
public static final String KEY_EMAIL = "email";
private static final String TAG = "DBAdapter";
private static final String DATABASE_NAME = "MyDB";
private static final String DATABASE_TABLE = "contacts";
private static final int DATABASE_VERSION = 1;
private static final String DATABASE_CREATE =
"create table titles (_id integer primary key autoincrement, "
+ "isbn text not null, title text not null, "
+ "publisher text not null);";
private final Context context;
private DatabaseHelper DBHelper;
private SQLiteDatabase db;
public DBAdapter(Context ctx)
{
this.context = ctx;
DBHelper = new DatabaseHelper(context);
}
private static class DatabaseHelper extends SQLiteOpenHelper
{
DatabaseHelper(Context context)
{
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db)
{
db.execSQL(DATABASE_CREATE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion,
int newVersion)
{
Log.w(TAG, "Upgrading database from version " + oldVersion
+ " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS titles");
onCreate(db);
}
}
//---打开数据库---

public DBAdapter open() throws SQLException
{
db = DBHelper.getWritableDatabase();
return this;
}
//---关闭数据库---

public void close()
{
DBHelper.close();
}
//---向数据库中插入一个标题---

public long insertTitle(String name, String email)
{
ContentValues initialValues = new ContentValues();
initialValues.put(KEY_NAME, name);
initialValues.put(KEY_EMAIL, email);
return db.insert(DATABASE_TABLE, null, initialValues);
}
//---删除一个指定标题---

public boolean deleteTitle(long rowId)
{
return db.delete(DATABASE_TABLE, KEY_ROWID +
"=" + rowId, null) > 0;
}
//---检索所有标题---

public Cursor getAllTitles()
{
return db.query(DATABASE_TABLE, new String[] {
KEY_ROWID,
KEY_NAME,
KEY_NAME},
null,
null,
null,
null,
null);
}
//---检索一个指定标题---

public Cursor getTitle(long rowId) throws SQLException
{
Cursor mCursor =
db.query(true, DATABASE_TABLE, new String[] {
KEY_ROWID,
KEY_NAME,
KEY_EMAIL},
KEY_ROWID + "=" + rowId,
null,
null,
null,
null,
null);
if (mCursor != null) {
mCursor.moveToFirst();
}
return mCursor;
}
//---更新一个标题---

public boolean updateTitle(long rowId, String name,
String email)
{
ContentValues args = new ContentValues();
args.put(KEY_NAME, name);
args.put(KEY_EMAIL, email);
return db.update(DATABASE_TABLE, args,
KEY_ROWID + "=" + rowId, null) > 0;
}
}

maintable.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />

<TableLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#DEDCD2"
android:stretchColumns="*">
<TableRow
android:background="#DEDCD2"
android:layout_margin="0.5dip">
<TextView
android:text="CA"
android:textColor="#0000FF"

android:textSize="20dip"
android:textStyle="bold"
android:ellipsize="marquee" />
<TextView
android:text="Device"

android:textColor="#0000FF"
android:textSize="20dip"
android:textStyle="bold"
android:ellipsize="marquee" />
<TextView
android:text="FixPage"
android:gravity="center"
android:textColor="#0000FF"
android:textSize="20dip"
android:textStyle="bold"
android:ellipsize="marquee" />
</TableRow>
</TableLayout>
<ListView
android:id="@+id/show3"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:drawSelectorOnTop="false"
/>
</LinearLayout>

line..xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >

<EditText
android:id="@+id/my_title"
android:layout_width="47dp"
android:layout_height="wrap_content"
android:layout_weight="0.27" />

<EditText
android:id="@+id/my_content"
android:layout_width="182dp"
android:layout_height="wrap_content"
android:layout_weight="0.22" />

<EditText
android:id="@+id/my_content2"
android:layout_width="182dp"
android:layout_height="wrap_content"
android:layout_weight="0.45" />

</LinearLayout>追问这是你从网上抄来的还是个错的吧

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 厕所在..北面风水好吗 android 如何获取保存的图片的地址 并存到数据库中 请问卫生间在西北角或者卫生间在北面 但是西北角有... Android创建数据库需要做哪些事情 吃松仁有什么好处? 卫生间在房子的西北角在风水上好吗 android如何保存html文件,包括其中的图片。 楼房卫生间位于房子的西北方向风水不好吗?能破解吗? 使用android自带的日历控件怎么标记特定的 android 怎么读取数据库中的数据 坐南朝北的房子厕所在什么方位最好? android 怎么往数据库里面添加数据 厕所在正北好不好? 怎么提高android contentresolver的查询效率优化 厕所设于居室北面是大凶,这与风水有什么联系吗? 如何对android多媒体数据库进行增删改 风水卫生间在北边好还的南边好 如何进行Android数据库操作 android 怎么使用sqlcipher android contentprovider 有什么用 卫生间朝北风水好不好 吃松子对人体有什么好处? Android数据库权限! 院子里的厕所窗户朝北好不好? 松子吃了有什么营养? 简述android平台提供了哪些数据存储方法 4&#8419;&#65039;室二两厅的房子,坐北朝南,有三个... android开发怎么存储数据 松子仁可以生吃吗?怎样吃最有营养? android的分批加载是怎么实现的 卫生间在北面阳台墙上安镜子正对着窗户好吗? 房子门朝酉卫生间在南边好还是在北面好? 松子有什么营养 android query 模糊查询怎么使用 新房子的卫生间在西北角好吗 孕妇吃松子有什么好处呢? 家里厕所在北边方位怎么样? Android开发,请问TextView v=new TextView(this);... 松仁孕妇能吃吗? 座东北向西南的房子厨房和卫生间在哪个方位比较好?