⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 serialhashtablerms.java

📁 J2ME上的一个播放器,可以更换皮肤.开源软件.
💻 JAVA
字号:
package inline.sys;

import java.util.*;
import javax.microedition.rms.*;
import java.io.*;

public class SerialHashtableRMS extends SerialHashtable
{
    private boolean loaded;
    private String name;
    
    public SerialHashtableRMS(String nname)
    {
	super();
	name = nname;
	loaded = false;
    }
    
    public void load()
    {
	// get self from RMS
	
	if (!loaded)
	{
            try
	    {
	        RecordStore recordstore = RecordStore.openRecordStore(name, false);
		RecordEnumeration re = recordstore.enumerateRecords(null,null, true);
		int rid = re.nextRecordId();
                byte ab[] = recordstore.getRecord(rid);
	        recordstore.closeRecordStore();

		deserializeBytes(ab);
	    }
	    catch(Exception e)
	    {
		System.err.println("RMS load failed: "+e);
	    }
	    loaded = true;
	}
    }

    public void save()
    {
	// put self into RMS
		
        try
        {
            byte ab[] = serializeBytes();
	    
	    RecordStore recordstore = RecordStore.openRecordStore(name, true);

/*System.err.println("RMS info: NRID="+recordstore.getNextRecordID()+
		    ", RDS="+recordstore.getNumRecords()+
		    ", SZ="+recordstore.getSize()+
		    ", ASZ="+recordstore.getSizeAvailable());*/

            if(recordstore.getNumRecords() < 1)
		recordstore.addRecord(ab, 0, ab.length);
            else
                recordstore.setRecord(recordstore.getNextRecordID() - 1, ab, 0, ab.length);

            recordstore.closeRecordStore();
        }
        catch(Exception e) 
	{ 
	    System.err.println("RMS save failed: "+e);
	}		
    }

}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -