📄 datamanage.java
字号:
package book;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.sql.SQLException;
import javax.swing.ButtonGroup;
import javax.swing.ImageIcon;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
public class DataManage extends Mb {
private JLabel icon;
private ButtonIcon ok,beifen,huifu,close;
private JDialog myDialog;
private JRadioButton zhengchang,huancun;
private ButtonGroup fruit;
DataManage(String s, int i, int j) {
super(s, i, j);
con.setLayout(null);
shezhi();
add();
}
void shezhi(){
icon=new JLabel(new ImageIcon("./data/image/heard/shujubeifen.jpg"));
icon.setBounds(0,5,300,190);
ok=new ButtonIcon("确定");
ok.setBounds(110,70,70,25);
ok.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int n = JOptionPane.showConfirmDialog(zhengchang,"你是否要恢复备份?这样会使现在的数据丢失!!", "数据恢复",
JOptionPane.YES_NO_OPTION);
if(n==0){
if(zhengchang.isSelected()){
copyFile( "./data/DataBackup/book.mdb","./data/book.mdb");
myDialog.dispose();
}
else{
copyFile( "./data/CloseBackup/book.mdb","./data/book.mdb");
myDialog.dispose();
}
}
else{
JOptionPane.showMessageDialog(zhengchang,"已放弃数据恢复!!!");
myDialog.dispose();
}
}
});
beifen=new ButtonIcon("数据备份");
beifen.setBounds(10,200,70,25);
beifen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
copyFile("./data/book.mdb", "./data/DataBackup/book.mdb");
}
});
huifu=new ButtonIcon("数据恢复");
huifu.setBounds(110,200,70,25);
huifu.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
setDialog();
}
});
close=new ButtonIcon("关闭");
close.setBounds(210,200,70,25);
close.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
close();
}
});
}
void setDialog(){
myDialog=new JDialog(this,"数据备份");
myDialog.setSize(300,130);
Container con1=myDialog.getContentPane();
fruit=new ButtonGroup();
zhengchang=new JRadioButton("按正常备份恢复数据");
zhengchang.setBounds(20,10,250,18);
zhengchang.setSelected(true);
huancun=new JRadioButton("按每次退出系统是备份的数据恢复");
huancun.setBounds(20,40,250,18);
fruit.add(zhengchang);
fruit.add(huancun);
con1.setLayout(null);
con1.add(zhengchang);
con1.add(huancun);
con1.add(ok);
Dimension dim=Toolkit.getDefaultToolkit().getScreenSize(); //获取分辨率
myDialog.setLocation((dim.width - 300) / 2,(dim.height - 130) / 2); //使窗体居中
myDialog.setResizable(false);
myDialog.setModal(true);
myDialog.setVisible(true);
myDialog.validate();
}
public void copyFile(String oldPath, String newPath) {
try {
int bytesum = 0;
int byteread = 0;
File oldfile = new File(oldPath);
if (oldfile.exists()) { //文件存在时
InputStream inStream = new FileInputStream(oldPath); //读入原文件
FileOutputStream fs = new FileOutputStream(newPath);
byte[] buffer = new byte[1444];
int length;
while ( (byteread = inStream.read(buffer)) != -1) {
bytesum += byteread; //字节数 文件大小
fs.write(buffer, 0, byteread);
}
inStream.close();
JOptionPane.showMessageDialog(this,"数据备份/恢复成功!!!!!!!");
}
else{
JOptionPane.showMessageDialog(this,"备份失败,备份文件不存在!!!!!!!");
}
}
catch (Exception e) {
JOptionPane.showMessageDialog(this,"数据备份/恢复失败!!请检查源文件是否存在!");
e.printStackTrace();
}
}
void add(){
con.add(icon);
con.add(beifen);
con.add(huifu);
con.add(close);
con.validate();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -