Tervetuloa RMS:n ihmeelliseen maailmaan!

Normaalisti kun tallennetaan tietoa olioihin ja tietotyyppeihin (kuten esim. String, int ja float) niin tieto h�vi�� muistista viimeisint��n silloin kun ohjelma suljetaan. Jos halutaan tallentaa tietoa pysyv�sti niin RMS on oikea mekanismi tilanteeseen.

Muista sis�llytt�� .rms.*-paketti

"Record store" on tietuemuisti. Tietuemuisti sis�lt�� tavu-taulukon johon tieto tallennetaan.

		import javax.microedition.rms.*; // muista sis�llyt��m��n t�m� paketti
		

Metodi joka kutsuu alla m��riteltyj� tallenna- ja avaa-metodeja

		
		public void tallennaJaAvaaRms()
		{
			try
			{
				int id = tallenna("Tallennetaan tama teksti kannykan muistiin");
				System.out.println("Avattu tiedosto:" + avaa(id));		
			}
			catch(Exception e)
			{	
			}	        
		}	
		
		public int tallenna(String s)
		{		
		  	int id=0;
			byte bytes[] = s.getBytes();
		
			try
	  		{
				// tietueen nimess� korkeaan 32 Unicode-merkki�				
	  			RecordStore rs = RecordStore.openRecordStore("tietueen_nimi", true);
	  	  		id = rs.addRecord(bytes, 0, bytes.length);
			}
			catch(Exception e)
			{
				System.out.println("Virhe tietueen tallennuksessa");
			}
		
			return id;
		}
	
		public String avaa(int id)
		{	
			int buffer_size = 256;
			byte bytes2[] = new byte[buffer_size];
				
			try			
			{
				RecordStore rs = RecordStore.openRecordStore("tietueen_nimi", true);	  		
				bytes2 = rs.getRecord(id);
			}
			catch(Exception e)
			{	
				System.out.println("Virhe tietueen avaamisessa.");
			}	
			
			String s = new String(bytes2);
		
			return s;
		
		}
		
		

static void deleteRecordStore(String recordStoreName) // tuhoa koko tietuemuisti
deleteRecord(id); // tuhoa yksi tietue
int getSize(); // koko tietuemuistin suuruus tavuina
int getSizeAvailable(); // tietuemuistille k�ytett�viss� oleva tallennustila
// closeRecordStore-metodia on kutsuttava ohjelmaa sulkiessa, jotta tiedot eiv�t j�isi keskusmuistiin
public void closeRecordStore()