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

📄 rmssaver.java

📁 一个手机小说查看系统,可以进行小说的下载、查阅等操作。
💻 JAVA
字号:
import javax.microedition.rms.*;
import java.io.*;
public class RmsSaver
{
	private String dbname = "db_oobooksv1_0";
	private RecordStore rs = null;
	private static int rmsDataNum = 0;//自定义数据个数
	public RmsSaver(int rmsDataNum)
	{
		try
		{
			this.rmsDataNum = rmsDataNum;
			rs = RecordStore.openRecordStore(dbname,true);
			//System.out.println(rs.getNumRecords()+"+"+rs.getNextRecordID());
			int nextRecordIdToAdded = rs.getNextRecordID();
			if(nextRecordIdToAdded != rmsDataNum+1 || rs.getNumRecords() != rmsDataNum)
			{
				rs = RecordStore.openRecordStore(dbname,true);
				try
				{
					for(int i=0;i<nextRecordIdToAdded;i++)
					{
						deleteData(i+1);
					}
				}catch(Exception e){}
				try
				{
					for(int i=0;i<rmsDataNum;i++)
					{
						addData("..");//自定义数据初始化
					}
				}catch(Exception e){}
			}
			//System.out.println(rs.getNumRecords()+"+"+rs.getNextRecordID());
		}catch(Exception e){}
	}
	public void addData(String data)
	{
		try
		{
			ByteArrayOutputStream baos = new ByteArrayOutputStream();
			DataOutputStream dos = new DataOutputStream(baos);
			dos.writeUTF(data);
			
			byte[] b=baos.toByteArray();
			rs.addRecord(b,0,b.length);
			baos.close();
			dos.flush();
		}catch(Exception ex){}				
	}
	public void setData(String[] dataArr)
	{
		try
		{
			if(dataArr.length == rmsDataNum)
				for(int i=0;i<rmsDataNum;i++)
					setData(i+1,dataArr[i]);
		}
		catch(Exception e){}
	}
	public void setData(int id,String data)
	{
		try
		{
			ByteArrayOutputStream baos = new ByteArrayOutputStream();
			DataOutputStream dos = new DataOutputStream(baos);
			dos.writeUTF(data);
			
			byte[] b=baos.toByteArray();
			rs.setRecord(id,b,0,b.length);
			baos.close();
			dos.flush();
		}
		catch(Exception e){}
	}
	public String[] getData()
	{
		String tmp[]=new String[rmsDataNum];
		int x=0;
		try
		{
			RecordEnumeration re = rs.enumerateRecords(null,null,true);
			while(re.hasNextElement())
			{	
				re.nextRecord();
				ByteArrayInputStream bais=new ByteArrayInputStream(rs.getRecord(x+1));
				DataInputStream dis=new DataInputStream(bais);
				tmp[x]=dis.readUTF();
				x++;
			}		
		}catch(Exception e){}
		return tmp;
	}
	public int getSize()
	{
		try
		{
			return rs.getNumRecords();
		}catch(Exception e){}
		return -1;
	}
	public RecordStore getRms()
	{
		return rs;
	}
	private void deleteData(int id)
	{
		try
		{
			rs.deleteRecord(id);
		}catch(Exception e){}
	}
	public void exit()
	{
		try
		{
			rs.closeRecordStore();
		}catch(Exception e){}
	}
}

⌨️ 快捷键说明

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