📄 passwordmanagermidlet.java
字号:
//如果flag记录集中的值为0,则读,1代表删除,则不读
String flagTemp = new String(rsTemp.getRecord(i));
//System.out.println("" + i + ":" + flagTemp);
if(flagTemp.equals("0")){
idIndex[j] = i; //获得显示的内容于记录集中的索引号的对应关系
id[j] = new String(rs.getRecord(i),"gb2312");
j++;
}
}
//System.out.println("lstView.size() 2:" + lstView.size());
//清空lstView中的显示
for(int i = lstView.size() - 1;i >= 0;i--){
lstView.delete(i);
//System.out.println("lstView.delete(" + i + ")");
}
//将ID信息显示在lstView中
for(int i = 0;i < j;i++){
lstView.append(id[i],null);
//System.out.println("lstView.append(" + i + ")");
}
//显示lstView
display.setCurrent(lstView);
}catch(Exception e){
System.out.println("查看密码失败:" +e);
//查看失败
displayAlert("查看密码失败!");
}
}
//选择“设置”
if(index == 2){
//显示设置密码界面
display.setCurrent(frmSetPassword);
}
//选择“帮助”
if(index == 3){
//显示帮助界面
display.setCurrent(frmHelp);
}
//选择“关于”
if(index == 4){
//显示关于界面
display.setCurrent(frmAbout);
}
//未选择
if(index == -1){
displayAlert("请选择您要察看的项目");
}
}
//处理设置密码界面中的返回按钮
if(c == cmdBackSetPassword){
//显示主界面
display.setCurrent(lstMain);
}
//处理设置密码界面中的确定按钮
if(c == cmdEnterSetPassword){
//密码
String pwd1 = tfPassword.getString();
//确认密码
String pwd2 = tfConfirmPassword.getString();
//判断用户是否输入为空
if(pwd1.length() !=0 && pwd2.length() != 0){
//判断密码和确认密码是否相同
if(pwd1.equals(pwd2)){
//设置密码
try{
//打开密码纪录
rs = RecordStore.openRecordStore("password",true);
//System.out.println("rs.getNumRecords():" + rs.getNumRecords());
//判断是否已设置密码
if(rs.getNumRecords() > 0){
//设置密码
rs.setRecord(1,pwd1.getBytes(),0,pwd1.length());
}else{ //未设置密码
rs.addRecord(pwd1.getBytes(),0,pwd1.length());
}
//关闭记录
rs.closeRecordStore();
//提示修改成功
displayAlert("密码设置成功");
}catch(Exception e){
//System.out.println(e);
//设置失败
displayAlert("密码设置失败!");
}
}else{
//提示用户密码和确认密码必须相同
displayAlert("密码和确认密码不相同");
}
}else{
//提示用户密码和确认密码不能为空
displayAlert("请检查密码和确认密码是否为空!");
}
}
//处理帮助界面中的返回按钮
if(c == cmdBackHelp){
//显示主界面
display.setCurrent(lstMain);
}
//处理关于界面中的返回按钮
if(c == cmdBackAbout){
//显示主界面
display.setCurrent(lstMain);
}
//处理增加密码界面中的返回按钮
if(c == cmdBackAdd){
//显示主界面
display.setCurrent(lstMain);
}
//处理增加密码界面中的确定按钮事件
if(c == cmdEnterAdd){
String idAdd = tfId.getString(); //id
String passwordAdd = tfPsswordAdd.getString();//密码
String confirmPasswordAdd = tfConfirmPasswordAdd.getString();//确认密码
String remarkAdd = tfRemark.getString();//备注
//判断是否完整输入,备注可以为空
if(idAdd.length() != 0 && passwordAdd.length() != 0 && confirmPasswordAdd.length() != 0){
//比较密码和确认密码是否相同
if(passwordAdd.equals(confirmPasswordAdd)){
//写入记录集中
try{
//写入ID
rs = RecordStore.openRecordStore("id",true);
rs.addRecord(idAdd.getBytes(),0,idAdd.length());
rs.closeRecordStore();
//写入密码
rs = RecordStore.openRecordStore("pwd",true);
rs.addRecord(passwordAdd.getBytes("iso8859_1"),0,passwordAdd.length());
rs.closeRecordStore();
//写入备注
rs = RecordStore.openRecordStore("remark",true);
rs.addRecord(remarkAdd.getBytes("iso8859_1"),0,remarkAdd.length());
rs.closeRecordStore();
//写入是否删除的标记,0代表正常,1代表删除
rs = RecordStore.openRecordStore("flag",true);
rs.addRecord(new String("0").getBytes(),0,1);
rs.closeRecordStore();
//提示密码增加成功
displayAlert("密码增加成功!");
}catch(Exception e){
//显示警告信息
displayAlert("增加密码失败!");
}
}else{
//显示警告信息
displayAlert("密码和确认密码是否相同!");
}
}else{
//显示警告信息
displayAlert("请检查输入是否完整!");
}
}
//处理查看密码主界面中的返回按钮
if(c == cmdBackViewMain){
//显示主界面
display.setCurrent(lstMain);
}
//处理查看密码主界面中的查看按钮事件
if(c == cmdInfo){
int index = lstView.getSelectedIndex(); //需要查看的信息id
//如果没有记录,则直接返回
if(index == -1) return;
//获得信息
String s1 = getInfoById(idIndex[index]);
if(s != null){
//显示到tbViewInfo中
tbViewInfo.setString(s1);
}else{
//显示提示信息,查看失败
displayAlert("无法获得详细信息");
}
//显示密码详细信息界面
display.setCurrent(tbViewInfo);
}
//处理密码详细信息界面中的返回按钮事件
if(c == cmdBackViewInfo){
//显示查看密码主界面
display.setCurrent(lstView);
}
//处理密码详细信息界面中的修改按钮事件
if(c == cmdModify){
//显示修改密码界面
display.setCurrent(frmViewModifyPassword);
}
//处理密码详细信息界面中的删除按钮事件
if(c == cmdDelView){
//查看密码界面中被选中的索引号
int index = lstView.getSelectedIndex();
//删除纪录集中的内容
try{
//向记录集中的flag内容中写入删除标记
rs = RecordStore.openRecordStore("flag",true);
rs.setRecord(idIndex[index],new String("1").getBytes(),0,1);
rs.closeRecordStore();
//返回主界面
display.setCurrent(lstMain);
}catch(Exception e){
System.out.println(e);
//显示警告信息
displayAlert("删除密码失败,请重试!");
}
}
//处理修改密码界面中的返回按钮事件
if(c == cmdBackViewModify){
int index = lstView.getSelectedIndex(); //需要查看的信息id
//获得信息
String s1 = getInfoById(idIndex[index]);
if(s != null){
//显示到tbViewInfo中
tbViewInfo.setString(s1);
}else{
//显示提示信息,查看失败
displayAlert("无法获得详细信息");
}
//显示密码详细信息界面
display.setCurrent(tbViewInfo);
}
//处理修改密码界面中的修改按钮事件
if(c == cmdModifyView){
//密码框用户输入
String pwd1 = tfPasswordView.getString();
//确认密码框用户输入
String pwd2 = tfConfirmPasswordView.getString();
//判断用户的输入
if(pwd1.length() != 0 && pwd2.length() != 0){ //用户输入了密码和确认密码
//判断密码和确认密码是否相同
if(pwd1.equals(pwd2)){//相同
int index = lstView.getSelectedIndex(); //需要查看的信息id
//修改密码
try{
//修改密码
rs = RecordStore.openRecordStore("pwd",true);
rs.setRecord(idIndex[index],pwd1.getBytes(),0,pwd1.length());
rs.closeRecordStore();
//显示
//获得信息
String s1 = getInfoById(idIndex[index]);
if(s != null){
//显示到tbViewInfo中
tbViewInfo.setString(s1);
}else{
//显示提示信息,查看失败
displayAlert("无法获得详细信息");
}
//显示密码详细信息界面
display.setCurrent(tbViewInfo);
}catch(Exception e){
//显示修改失败
displayAlert("修改密码失败");
}
}else{//不相同
//显示密码和确认密码不相同
displayAlert("密码和确认密码不同!");
}
}else{ //密码或者确认密码,用户未输入
//提示用户输入
displayAlert("请检查输入是否完整,其中密码和确认密码均不能为空!");
}
}
//设置进入密码界面中的删除按钮事件
if(c == cmdDelSetPassword){
try{
//判断用户是否已设置密码
rs = RecordStore.openRecordStore("password",true);
int numTemp = rs.getNumRecords(); //记录集中的纪录数量
rs.closeRecordStore();
//用户已设置密码
if(numTemp > 0){
//删除,彻底删除
RecordStore.deleteRecordStore("password");
//提示删除密码成功
displayAlert("删除密码成功,请返回!");
}else{//用户未设置密码
//提示尚未设置密码
displayAlert("您尚未设置密码,无法删除!");
}
}catch(Exception e){
//显示删除失败
displayAlert("删除密码失败,请重试!");
}
}
}
/**
*显示提示或者警告信息
*@param msg 信息内容
*/
public final void displayAlert(String msg){
//设置提示信息
alert.setString(msg);
//显示3秒
alert.setTimeout(3000);
display.setCurrent(alert);
}
/**
* 获得指定id的纪录内容,包括密码id,密码和备注信息
*
*
*/
public final String getInfoById(int id){
try{
//密码ID
rs = RecordStore.openRecordStore("id",false);
String idView = new String(rs.getRecord(id),"gb2312");
rs.closeRecordStore();
//密码
rs = RecordStore.openRecordStore("pwd",false);
String pwdView = new String(rs.getRecord(id),"gb2312");
rs.closeRecordStore();
//备注
rs = RecordStore.openRecordStore("remark",false);
String remarkView = new String(rs.getRecord(id),"gb2312");
rs.closeRecordStore();
//返回
return "密码id:" + idView + " 密码:" + pwdView + " 备注:" + remarkView;
}catch(Exception e){
return null;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -