当前位置:文档之家› 加密与解密课程设计

加密与解密课程设计

4
public code() 的基本构架和面板布置
{ f = new Frame("文件加密");
f.setLayout(new BorderLayout()); p1 = new Panel(); p2 = new Panel(); l1 = new Label("选择路径"); scan = new Button("浏览"); l2 = new Label("密钥"); key = new Button("加密"); unkey = new Button("解密"); t1 = new TextField(30); t2 = new TextField(20); ta = new TextArea(); p1.add(l1); p1.add(t1); p1.add(scan); f.add(p1, BorderLayout.NORTH); p2.add(l2); p2.add(t2); p2.add(key);
3 设计题目
采用图形用户界面,建立菜单。 (1)给定任意一个文本文件,进行加密,生成另一个文件。 (2)对加密后的文件还原。
4 设计任务
通过实践加深学生对面向对象程序设计的理论、方法和基础知识的理解,掌握使用 java 语言进行面向对象程序设计的基本方法,提高运用面向对象知识分析实际问题、解 决实际问题的能力,提高学生的应用能力。
1
1 设计时间
2013 年 6 月 8 日-2013 年 6 月 14 日
2 设计目的
《面向对象程序设计》是一门实践性很强的计算机专业基础课程,课程设计是学习完 该课程后进行的一次较全面的综合练习。其目的在于通过实践加深学生对面向对象程序设 计的理论、方法和基础知识的理解,掌握使用 Java 语言进行面向对象设计的基本方法, 提高运用面向对象知识分析实际问题、解决实际问题的能力,提高学生的应用能力。
添加窗体并布置面板,中间用到了,弹出对话框的事件。设计的类有,Frame,Panel, J JOptionPane。
文件选择器的载入。通过为按钮添加事件监听,来实现文件选择器的触发操作。用到 的类为:JFileChooser。
自定义异常的种类,实现异常的灵活应用。适当的调整程序的终止点或者循环点。
5.4 程序源代码
FileReader reader = null;
try
{
7
reader = new FileReader(path); int tempchar; ta.setText(""); while ((tempchar = reader.read()) != -1) {
char n=(char)tempchar; char[] m ={ n}; String M = new String(m,0,1); ta.append(M); } reader.close(); } catch (Exception e1) { ta.append("文件读取出错!"); } }
if (result ==
JFileChooser.APPROVE_OPTION)
{
FileName = file.getSelectedFile().getName();
path =
file.getSelectedFile().getAbsolutePath();
t1.setText(path);
开 始 点击 浏览
读取 文件
输入密钥
N 密钥
Y非空
加/
N解
Y
ห้องสมุดไป่ตู้

是否存在
此文件的 N加/解密文
加/解件密成
图 1功 程
序流程
3
5.3 程序解决的核心问题
利用文件的输入输出流,按字符读取文件内容,把读取的内容,注意进行处理后,在 重新写入新文件,实现文件加密。用到的类:FileRead,FileWrite.
钥!");
if (b.equals("")) throw new MyException1("请输入密
else
n = Integer.parseInt(t2.getText());
try
{
ta.setText("");
t2.setText("");
read1 = new FileReader(path); write1 = new FileWriter("解密
6
System.exit(0); } }
class scanner implements ActionListener
//
浏览按钮的监听事件
{
public void actionPerformed(ActionEvent e)
{
JFileChooser file = new JFileChooser("."); int result = file.showOpenDialog(null);//0代表 选择了文件
5 设计内容 5.1 需求分析
5.1.1 问题描述
通过编程,实现“加密与解密”功能。给定任意一个文本文件,进行加密,生成另 一个文件。对加密后的文件还原。
5.1.2 基本要求
采用图形用户界面,建立菜单
(1)给定任意一个文本文件,进行加密,生成另一个文件。
(2)对加密后的文件还原。
2
5.2 程序流程
10
catch (IOException e1) {
} } catch (MyException1 e2) { } } }
class unkeyer implements ActionListener //解密 按钮监听事件
{ public void actionPerformed(ActionEvent e) { FileReader read1 = null; FileWriter write1 = null; int n; try { String a = t1.getText();
} public static void main(String[] args) {
code code1 = new code(); //主函数入口
} class win extends WindowAdapter //关闭窗口的监听事件 {
public void windowClosing(WindowEvent e) {
//窗体
5
p2.add(unkey); f.add(p2, BorderLayout.SOUTH); f.add(ta, BorderLayout.CENTER); f.pack(); f.setVisible(true); f.addWindowListener(new win()); scan.addActionListener(new scanner()); key.addActionListener(new keyer()); unkey.addActionListener(new unkeyer());
加密与解密课程设计
软件学院
课程设计报告书
课程名称 设计题目 专业班级 学号 姓名 指导教师
面向对象程序设计课程设计 文件加密与解密
2013 年 6 月
目录
1 设计时间 ................................................... 2 5 设计内容 ................................................... 2 2 设计目的 ................................................... 2 3 设计题目 ................................................... 2 4 设计任务 ................................................... 2 5.1 需求分析 ................................................. 2 5.1.1 问题描述 ............................................... 2 5.1.2 基本要求 ............................................... 2 5.2 程序流程 ................................................. 3 5.3 程序解决的核心问题........................................ 4 5.4 程序源代码 ............................................... 4 5.5 程序执行界面............................................. 14 6 总结与展望 ................................................ 17 参考文献 .................................................... 18
}
}
8
class keyer implements ActionListener // 加密按钮的监听事件
{ public void actionPerformed(ActionEvent e) {
FileReader read1 = null;
FileWriter write1 = null;
int n;
try
{
String a = t1.getText();
相关主题