/********************アクティビティクラス*************************/
package kawasaki.com;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import android.app.Activity;
import android.content.ContentValues;
import android.content.res.AssetManager;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.util.Log;
public class Db_Test_1 extends Activity {
/** Called when the activity is first created. */
//メンバー変数
//データベースヘルパーの作成
private DatabaseHelper helper;
//データベースの宣言
public static SQLiteDatabase mDb;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//DBファイルの真偽
File file = new File("/data/data/kawasaki.com/databases/sample.db");
if(file.exists()){
file.delete();
Log.d("kawasaki_debug","ファイルを消去しました");
}else{
Log.d("kawasaki_debug","ファイルはありません");
}
//DBの作成
helper = new DatabaseHelper(this);
//CSVファイルの読み込み準備
AssetManager as = getResources().getAssets();
//DBオープン
mDb = helper.getWritableDatabase();
//DB値格納変数
ContentValues value = new ContentValues();
try {
BufferedReader bf = new BufferedReader(new InputStreamReader(as.open("test_csv.csv")));
String s;
while((s = bf.readLine()) != null){
String [] strAry = s.split(",");
Log.d("kawasaki_debug","" + strAry[0] + "");
value.put("NAME",strAry[0]);
value.put("TEL",strAry[1]);
mDb.insert("BOOK",null,value);
}
} catch (IOException e) {
// TODO 自動生成された catch ブロック
Log.d("kawasaki_debug", "" + e + "");
}
}
//DBクローズ
@Override
public void onDestroy(){
super.onDestroy();
helper.close();
}
}
/**********************DatabaseHelperクラス**********************/
import java.io.File;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DatabaseHelper extends SQLiteOpenHelper{
//コンテキスト
public DatabaseHelper(Context context){
super(context,"sample.db",null,1);
//super(context, null, null, 1);
System.out.println("DBです");
}
//テープル作成
@Override
public void onCreate(SQLiteDatabase db) {
// TODO 自動生成されたメソッド・スタブ
db.execSQL("CREATE TABLE BOOK (_id INTEGER PRIMARY KEY,NAME TEXT,TEL TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO 自動生成されたメソッド・スタブ
}
}
★★★★★★★★★★★★★まとめ★★★★★★★★★★★★★★
AndroidでもDB基本的なところはかわりません、
SQLiteOpenHelperなど便利なクラスもありますので積極的に使うべきですね、
package kawasaki.com;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import android.app.Activity;
import android.content.ContentValues;
import android.content.res.AssetManager;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.util.Log;
public class Db_Test_1 extends Activity {
/** Called when the activity is first created. */
//メンバー変数
//データベースヘルパーの作成
private DatabaseHelper helper;
//データベースの宣言
public static SQLiteDatabase mDb;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//DBファイルの真偽
File file = new File("/data/data/kawasaki.com/databases/sample.db");
if(file.exists()){
file.delete();
Log.d("kawasaki_debug","ファイルを消去しました");
}else{
Log.d("kawasaki_debug","ファイルはありません");
}
//DBの作成
helper = new DatabaseHelper(this);
//CSVファイルの読み込み準備
AssetManager as = getResources().getAssets();
//DBオープン
mDb = helper.getWritableDatabase();
//DB値格納変数
ContentValues value = new ContentValues();
try {
BufferedReader bf = new BufferedReader(new InputStreamReader(as.open("test_csv.csv")));
String s;
while((s = bf.readLine()) != null){
String [] strAry = s.split(",");
Log.d("kawasaki_debug","" + strAry[0] + "");
value.put("NAME",strAry[0]);
value.put("TEL",strAry[1]);
mDb.insert("BOOK",null,value);
}
} catch (IOException e) {
// TODO 自動生成された catch ブロック
Log.d("kawasaki_debug", "" + e + "");
}
}
//DBクローズ
@Override
public void onDestroy(){
super.onDestroy();
helper.close();
}
}
/**********************DatabaseHelperクラス**********************/
import java.io.File;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DatabaseHelper extends SQLiteOpenHelper{
//コンテキスト
public DatabaseHelper(Context context){
super(context,"sample.db",null,1);
//super(context, null, null, 1);
System.out.println("DBです");
}
//テープル作成
@Override
public void onCreate(SQLiteDatabase db) {
// TODO 自動生成されたメソッド・スタブ
db.execSQL("CREATE TABLE BOOK (_id INTEGER PRIMARY KEY,NAME TEXT,TEL TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO 自動生成されたメソッド・スタブ
}
}
★★★★★★★★★★★★★まとめ★★★★★★★★★★★★★★
AndroidでもDB基本的なところはかわりません、
SQLiteOpenHelperなど便利なクラスもありますので積極的に使うべきですね、
0 件のコメント:
コメントを投稿