8 SQLiteDatabase 存储时需要使用绝对路径
来源:互联网 发布:梓潼淘宝运营招聘 编辑:程序博客网 时间:2024/05/22 04:34
---------------------------------main.java--------------------------------------
package com.example.db;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteException;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
public class MainActivity extends ActionBarActivity {
SQLiteDatabase db;
Button bn = null;
ListView listView;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//创建或打开数据库(此处需要使用绝对路径)
db = SQLiteDatabase.openOrCreateDatabase(this.getFilesDir()
.toString() + "/my.db3" , null);
listView = (ListView)findViewById(R.id.show);
bn = (Button)findViewById(R.id.ok);
bn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View source)
{
//获取用户输入
String title = ((EditText)findViewById(R.id.title))
.getText().toString();
String content = ((EditText)findViewById(R.id.content))
.getText().toString();
try
{
insertData(db , title , content);
Cursor cursor = db.rawQuery("select * from news_inf", null);
inflateList(cursor);
}
catch(SQLiteException se)
{
//执行DDL创建数据表
db.execSQL("create table news_inf(_id integer primary key autoincrement,"
+ " news_title varchar(50),"
+ " news_content varchar(255))");
//执行insert语句插入数据
insertData(db , title , content);
//执行查询
Cursor cursor = db.rawQuery("select * from news_inf", null);
inflateList(cursor);
}
}
});
}
private void insertData(SQLiteDatabase db
, String title , String content)
{
//执行插入语句
db.execSQL("insert into news_inf values(null , ? , ?)"
, new String[]{title , content});
}
private void inflateList(Cursor cursor)
{
//填充SimpleCursorAdapter
SimpleCursorAdapter adapter = new SimpleCursorAdapter(
MainActivity.this , R.layout.line, cursor
, new String[]{"news_title" , "news_content"}
, new int[]{R.id.my_title , R.id.my_content});
//显示数据
listView.setAdapter(adapter);
}
@Override
public void onDestroy()
{
super.onDestroy();
//退出程序时关闭SQLiteDatabase
if (db != null && db.isOpen())
{
db.close();
}
}
}
。。。。。。。。。。。。。。。main.xml。。。。。。。。。。。。。。。。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<EditText
android:id="@+id/title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<EditText
android:id="@+id/content"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:lines="2"
/>
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/insert"
/>
<ListView
android:id="@+id/show"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
。。。。。。。。。。。。。。。。line.xml。。。。。。。。。。。。。。。。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<EditText
android:id="@+id/my_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="120px"
/>
<EditText
android:id="@+id/my_content"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
- 8 SQLiteDatabase 存储时需要使用绝对路径
- 使用SQLiteDatabase操作SQLite数据库存储数据
- SQLiteDatabase使用
- thinkphp中读取文件需要使用绝对路径
- 数据存储之SQLiteDatabase
- Android SQLiteDatabase 数据库存储
- Android-SQLiteDatabase数据存储
- 用SQLiteDatabase类存储数据
- Android SQLiteDatabase的使用
- SQLiteDataBase的基本使用
- SQLiteDataBase数据库的使用
- 使用SQLiteDataBase操作数据库
- SQLiteDatabase的使用
- Android SQLiteDatabase的使用
- 使用assets本地SQLiteDatabase
- SQLiteDatabase数据库的使用
- Android SQLiteDatabase的使用
- SqliteDatabase的基本使用
- 安装Android Studio问题汇总
- 黑马程序员—继承与多态
- poj3311 全排列
- 用户空间应用程序如何加载模块到内核空间?
- Oracle数据泵
- 8 SQLiteDatabase 存储时需要使用绝对路径
- Hbase与MapReduce
- 初试win8商店应用开发_三姑六婆亲属关系计算器
- 使用不同版本Gradle导入Andorid Studio 出现Gradle version xxxx is required
- 李白打酒—题解
- Web前端开发推荐阅读书籍-精华
- mysql innodb 性能优化
- Linux内核分析课程1_计算机是如何工作的
- adapter