o0o0okay
سه شنبه 12 اسفند 1393, 13:56 عصر
سلام
من میخاستم دیتابیس افلاینم رو بروزرسانی کنم. ولی متد هاشو موندم که چطور پر کنم.
public class database extends SQLiteOpenHelper {
public final String path = "data/data/com.an/databases/";
public final String Name = "dataofkonkor";
public SQLiteDatabase mydb;
private final Context mycontext;
public database(Context context) {
super(context, "dataofkonkor", null, 1);
mycontext = context;
}
@Override
public void onCreate(SQLiteDatabase arg0) {
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
}
public void useable() {
boolean checkdb = checkdb();
if (checkdb) {
} else {
this.getReadableDatabase();
try {
copydatabase();
}
catch (IOException e) {
}
}
}
public void open() {
mydb = SQLiteDatabase.openDatabase(path + Name, null, SQLiteDatabase.OPEN_READWRITE);
}
@Override
public void close() {
mydb.close();
}
public boolean checkdb() {
SQLiteDatabase db = null;
try {
db = SQLiteDatabase.openDatabase(path + Name, null, SQLiteDatabase.OPEN_READONLY);
}
catch (SQLException e) {
}
return db != null ? true : false;
}
public void copydatabase() throws IOException {
OutputStream myOutput = new FileOutputStream(path + Name);
byte[] buffer = new byte[1024];
int lenght;
InputStream myInput = mycontext.getAssets().open(Name);
while ((lenght = myInput.read(buffer)) > 0) {
myOutput.write(buffer, 0, lenght);
}
myInput.close();
myOutput.flush();
myOutput.close();
}
}
متدهای onCreate و onUpgrade
می خوام کل دیتابیس تغییر کنه، نه فیلدی یا جدول خاصی.
کل دیتابیس تغییر کنه.
من میخاستم دیتابیس افلاینم رو بروزرسانی کنم. ولی متد هاشو موندم که چطور پر کنم.
public class database extends SQLiteOpenHelper {
public final String path = "data/data/com.an/databases/";
public final String Name = "dataofkonkor";
public SQLiteDatabase mydb;
private final Context mycontext;
public database(Context context) {
super(context, "dataofkonkor", null, 1);
mycontext = context;
}
@Override
public void onCreate(SQLiteDatabase arg0) {
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
}
public void useable() {
boolean checkdb = checkdb();
if (checkdb) {
} else {
this.getReadableDatabase();
try {
copydatabase();
}
catch (IOException e) {
}
}
}
public void open() {
mydb = SQLiteDatabase.openDatabase(path + Name, null, SQLiteDatabase.OPEN_READWRITE);
}
@Override
public void close() {
mydb.close();
}
public boolean checkdb() {
SQLiteDatabase db = null;
try {
db = SQLiteDatabase.openDatabase(path + Name, null, SQLiteDatabase.OPEN_READONLY);
}
catch (SQLException e) {
}
return db != null ? true : false;
}
public void copydatabase() throws IOException {
OutputStream myOutput = new FileOutputStream(path + Name);
byte[] buffer = new byte[1024];
int lenght;
InputStream myInput = mycontext.getAssets().open(Name);
while ((lenght = myInput.read(buffer)) > 0) {
myOutput.write(buffer, 0, lenght);
}
myInput.close();
myOutput.flush();
myOutput.close();
}
}
متدهای onCreate و onUpgrade
می خوام کل دیتابیس تغییر کنه، نه فیلدی یا جدول خاصی.
کل دیتابیس تغییر کنه.