1、 课程设计课程设计报告书报告书 课程名称课程名称 面向对象程序设计课程设计面向对象程序设计课程设计 设计题目设计题目 文件加密与解密文件加密与解密 专业班级专业班级 学学 号号 姓姓 名名 指导教师指导教师 2013 年年 6 月月 1 目录目录 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 程序执行界面.9 6 总结与展望 .11 参考文献.11 2 1 1 设计时间设计时间 2013 年
2、 6 月 8 日-2013 年 6 月 14 日 2 2 设计目的设计目的 面向对象程序设计是一门实践性很强的计算机专业基础课程,课程设计是学习完 该课程后进行的一次较全面的综合练习。 其目的在于通过实践加深学生对面向对象程序设 计的理论、方法和基础知识的理解,掌握使用 Java 语言进行面向对象设计的基本方法, 提高运用面向对象知识分析实际问题、解决实际问题的能力,提高学生的应用能力。 3 3 设计题目设计题目 采用图形用户界面,建立菜单。 (1)给定任意一个文本文件,进行加密,生成另一个文件。 (2)对加密后的文件还原。 4 4 设计任务设计任务 通过实践加深学生对面向对象程序设计的理论、
3、方法和基础知识的理解,掌握使用 java 语言进行面向对象程序设计的基本方法,提高运用面向对象知识分析实际问题、解 决实际问题的能力,提高学生的应用能力。 5 5 设计内容设计内容 5.1 需求分析需求分析 5.1.1 问题描述 通过编程,实现“加密与解密”功能。给定任意一个文本文件,进行加密,生成另 一个文件。对加密后的文件还原。 5.1.2 基本要求 采用图形用户界面,建立菜单 (1)给定任意一个文本文件,进行加密,生成另一个文件。 (2)对加密后的文件还原。 3 5.2 程序流程程序流程 开始 点击浏览 读取文件 输入密钥 密钥非空 Y N 加/解密 是否存在此文件的 加/解密文件 N
4、加/解密成功 N Y 图 1 程序流程 4 5.3 程序解决的核心问题程序解决的核心问题 利用文件的输入输出流,按字符读取文件内容,把读取的内容,注意进行处理后,在 重新写入新文件,实现文件加密。用到的类:FileRead,FileWrite. 添加窗体并布置面板,中间用到了,弹出对话框的事件。设计的类有,Frame,Panel, J JOptionPane。 文件选择器的载入。通过为按钮添加事件监听,来实现文件选择器的触发操作。用 到的类为:JFileChooser。 自定义异常的种类,实现异常的灵活应用。适当的调整程序的终止点或者循环点。 5.4 程序源代码程序源代码 import jav
5、a.awt.*; import java.awt.event.*; import java.io.*; import javax.swing.*; public class code Frame f; Panel p1, p2; Label l1, l2; Button key, unkey,scan; TextField t1, t2; TextArea ta; String path; String FileName; public code() /窗体的基本构架和面板布置 f = new Frame(“文件加密“); f.setLayout(new BorderLayout(); p1
6、= 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); 5 p1.add(t1); p1.add(scan); f.add(p1, BorderLayout.NORTH); p2.add(l2); p2.add(t2); p2.add(k