PDA

View Full Version : ذخیره و بازیابی اطلاعات در RMS



majid2
شنبه 22 خرداد 1389, 07:23 صبح
باسلام خدمت دوستان
یک چند روزی بدنبال نحوه کار با rms بودم که الحمدا..مشکلم حل شدویاد گرفتم و الان هم در برنامه ام استفاده می کنم
من از rms برای رمز عبور کاربر استفاده نمودم
در تایپک گذشته که ( چگونه با رمز عبور وارد برنامه شویم) هم مطرح کردم اما دیدم کسی زیاد راهنمای جامعی نکرد بر این شدم که نحوه ذخیره و بازیابی و حذف را برای شما دوستان عزیز بزارم

majid2
شنبه 22 خرداد 1389, 08:30 صبح
import javax.microedition.rms.*;
.
.
.
---------------


private RecordStore record;



.
.
.



----------------------------------------------


public void openRecord(string name_rec){
try{
record = RecordStore.openRecordStore(name_rec, true );
}catch (Exception e){
db(e.toString());
}
}


------------------------------



public void closeRecord(){
try{
record.closeRecordStore();
}catch (Exception e){
db(e.toString());
}
}



----------------------------------


public void deleteRecord(string name_rec){
if (RecordStore.listRecordStores() != null){
try{
RecordStore.deleteRecordStore(name_rec);
}catch (Exception e){
db(e.toString());
}
}
}


------------------------------------


public void writeRecord(String str,){
byte[] rec = str.getBytes();
try{
record.addRecord(rec, 0, rec.length);
}catch (Exception e){
db(e.toString());
}
}



--------------------------------------


public string searchRecord(string search_rec){
try{
if (record.getNumRecords() > 0){
Comparator comp = new Comparator();
RecordEnumeration re = record.enumerateRecords(null, comp, false);


while (re.hasNextElement()){
String str = new String(re.nextRecord());
}


if str.equalsIgnoreCase(search_rec)
{
break;


}


}
} catch (Exception e){
db(e.toString());
}


retuen(str);


}





----------------------------------


private void db(String error){
System.err.println("Exception: " + error);
}
}


class Comparator implements RecordComparator{
public int compare(byte[] rec1, byte[] rec2){
String str1 = new String(rec1);
String str2 = new String(rec2);
int result = str1.compareTo(str2);
if (result == 0){
return RecordComparator.EQUIVALENT;
} else if (result < 0){
return RecordComparator.PRECEDES;
} else {
return RecordComparator.FOLLOWS;
}
}
}



============================================
============================================
فراخوانی توابع



openRecord(name_rec);
writeRecord(insert_rec);
closeRecord();


//....................................


openRecord(name_rec);
searchRecord(search_rec);
closeRecord();

//....................................


deleteRecord();

vbnovin
دوشنبه 24 خرداد 1389, 08:44 صبح
مرسی از زحمتتان لطفا نحوه کانکت به دیتا بیس را هم بگذارید.( ارتباط با بانک) با یک مثال سورس ممنونم اگر اینکار را انجام بدهید .
برای طراحی در محیط NetBeans چطور امکان پذیر می باشد .
در رابطه با jdbc هم توضیح دهید ..

8611670474
سه شنبه 22 تیر 1389, 15:02 عصر
سلام.بنده هم خیلی فوری نیاز به این آموزش درام.لطفا یه مثال بزنید.
این را هم توضیح دهید که آیا در rms باید جدول ساخت ، برای ذخیره اطلاعات؟ چطوری؟

majid2
جمعه 25 تیر 1389, 08:10 صبح
با سلام
دوست عزيز براي ذخيره و بازيابي اطلاعات مي توان از RMS يا فايل ها كمك گرفت
هر كدوم از آنها يك مزيتي دارند همه اش بستگي به برنامه شما دارد
درRMS احتياج به هيچ گونه طراحي بانك ندارد در حقيقت هر RMS خود يك تيبل است و در داخل اين تيبل فقط ركورد ذخيره مي شود (فيلد ندارد )اطلاعات بصورت ركورد ركورد است
لطفا براي اطلاعات بيشر به اين (http://www.barnamenevis.org/forum/showthread.php?t=233690) تايپك مراجعه كنيد

زکیه ابراهیمی
پنج شنبه 21 بهمن 1389, 23:31 عصر
سلام
وقتی رکوردی را حذف میکنم باقی رکوردها دیگه نه خونده میشود و نه نوشته میشود چی کارکنم خواهش میکنم کمکم کنید
record.deleterecord(1

dr_jacky_2005
دوشنبه 25 بهمن 1389, 16:07 عصر
import javax.microedition.rms.*;
.
.
.
---------------


private RecordStore record;

.....

deleteRecord();
من 3 تا کلاس دارم ( که یکیش main است ) .
توو دومی نیز کار ذخیره یک اطلاعاتی رو دارم.
اینطوری:
این توو کانستراکتور:


try
{
rs = RecordStore.openRecordStore("DBName", true);
}
catch(RecordStoreException e)
{
log("opennemishe: "+e);
}

اینم واسه ذخیره:


byte[] Norec = UTF8.UTF8Encode(str);
try
{
rs.addRecord(Norec, 0, Norec.length);

closeRecord();
}
catch(RecordStoreException e)
{
log("addnemisherecord:"+e);
}

ذخیره مشکلی نداره.
مشکل اونجاییه که میخوام ازین رکورد ذخیره شده استفاده کنم.
این کلاس سوم ( که میخوام استفاده کنم):
این در کانستراکتور:


try
{
// UqNo.openRecord("UqNo");
rs = RecordStore.openRecordStore("DBName", true);
resultttttt = UTF8.UTF8Decode(rs.getRecord(0), 0, rs.getRecord(0).length) ;
}
catch(RecordStoreException e)
{
log("OpennemisheDarRRcrd\u062E\u0637\u0627: "+e);
}


اینجا ارور که میده و میافته توو exception.

مسایلی که هس یکی اون
getRecord(0)
است که باید 0 باشه یا 1؟
(1 هم بود باز ارور میداد )!!!
دوم اینکه باید از اون rs توو کلاس دومی استفاده کنم ( جایی که کار ذخیره رو انجام میدم ) ؟
یا
باید باز توو کلاس سومی نیز یک RecordStore rs بنویسم؟
(از همون rs توو کلاس دوم استفاده کردم،برنامه ران نمیشه! ( توو گوشی و شبیه ساز هر دو ).

dr_jacky_2005
سه شنبه 26 بهمن 1389, 18:28 عصر
دو تا کلاس دارم.
یکی واسه ذخیره.
یکی واسه لود کردن و استفاده ازون چیزی که ذخیره شده.

کلاس ذخیره ذخیرش رو میکنه.
ولی تا برنامه رو کامل نبندم،نمیشه در کلاس لود،ازون چیزی که توو DB ایت استفاده کرد.
وقتی کامل میبندم،بعد برنامه رو باز میکنم،میشه لود کرد اون داده رو.
خب؟!من میخوام از فرم ذخیره که اومد بیرون،رفت توو فرم لود داده،بتونه لود کنه : (rs.getrecord(1)

نکته:
چه closeRecord بنویسم بعد از ذخیره و بعد ازاستفاده ( لود ) .... فرقی نداره!

ezamnejad
شنبه 07 اسفند 1389, 15:27 عصر
سلام
وقتی رکوردی را حذف میکنم باقی رکوردها دیگه نه خونده میشود و نه نوشته میشود چی کارکنم خواهش میکنم کمکم کنید
record.deleterecord(1

برای خوندن اگر از recorde numeration استفاده کنید مشکلتون حل میشه . چون وقتی یک recordID حذف میشه امکان خوندن اون رکورد دیگه وجود نداره و شما نمیتونید از اون recordID استفاده کنید.

dr_jacky_2005
دوشنبه 09 اسفند 1389, 11:09 صبح
برای خوندن اگر از recorde numeration استفاده کنید مشکلتون حل میشه . چون وقتی یک recordID حذف میشه امکان خوندن اون رکورد دیگه وجود نداره و شما نمیتونید از اون recordID استفاده کنید.
میشه کد هایی که واسه ذخیره و لود کردن با این روش شما لازمه رو بدین؟
لطفا:بوس:

tecnocomputer2
جمعه 20 اسفند 1389, 16:31 عصر
کلا معلوم نیست جریانش چیه.
یه مثال میشه یکی بزنه؟