📄 serialhashtablefile.java
字号:
package inline.sys;
import java.util.*;
import javax.microedition.rms.*;
import javax.microedition.io.*;
import java.io.*;
import inline.fs.*;
public class SerialHashtableFile extends SerialHashtable
{
private String filename;
public SerialHashtableFile(String fname)
{
super();
filename = fname;
}
public void load()
{
// get self from file
if(Provider.valid())
{
try
{
FileAccessible fs = Provider.access();
fs.open(filename, Connector.READ);
InputStream is = fs.openInputStream();
long fz = fs.fileSize();
if (is!=null && fz>0)
{
byte ba[] = new byte[(int)fz];
is.read(ba);
is.close();
deserializeBytes(ba);
}
fs.close();
}
catch(Exception e)
{
Log.fire("Can't open SHF file: "+e);
}
}
}
public void save()
{
if(Provider.valid())
{
try
{
FileAccessible fs = Provider.access();
while(true)
{
fs.open(filename, Connector.READ_WRITE);
if (fs.exists())
{
fs.delete();
fs.close();
fs.open(filename, Connector.READ_WRITE);
}
else
{
break;
}
}
fs.create();
OutputStream os = fs.openOutputStream();
if (os!=null)
{
byte[] ba = serializeBytes();
os.write(ba);
os.close();
}
fs.close();
}
catch(Exception e)
{
Log.fire("Can't save SHF file: "+e);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -