ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:62.23KB ,
资源ID:10745608      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-10745608.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ajva课程设计加密与解密大学论文.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

ajva课程设计加密与解密大学论文.docx

1、ajva课程设计加密与解密大学论文 JAVA课程设计报告题 目加密与解密院 系班 级学 号姓 名目录1设计分析 511 设计目的 51.2设计题目 51.3设计任务 52 设计内容 62.1需求分析 62.1.1问题描述 62.1.2基本要求 62.2程序流程 73程序相关问题 83.1程序解决的核心问题 83.2程序源代码 83.3程序执行界面 124 总结与展望 145参考文献 151设计分析11 设计目的面向对象程序设计是一门实践性很强的计算机专业基础课程,课程设计是学习完该课程后进行的一次较全面的综合练习。其目的在于通过实践加深学生对面向对象程序设计的理论、方法和基础知识的理解,掌握使

2、用Java语言进行面向对象设计的基本方法,提高运用面向对象知识分析实际问题、解决实际问题的能力,提高学生的应用能力。1.2设计题目采用图形用户界面,建立菜单。(1)给定任意一个文本文件,进行加密,生成另一个文件。(2)对加密后的文件还原。1.3设计任务 通过实践加深学生对面向对象程序设计的理论、方法和基础知识的理解,掌握使用java语言进行面向对象程序设计的基本方法,提高运用面向对象知识分析实际问题、解决实际问题的能力,提高学生的应用能力。2 设计内容 2.1需求分析2.1.1问题描述 通过编程,实现“加密与解密”功能。给定任意一个文本文件,进行加密,生成另一个文件。对加密后的文件还原。2.1

3、.2基本要求采用图形用户界面,建立菜单 (1)给定任意一个文本文件,进行加密,生成另一个文件。(2)对加密后的文件还原。 2.2程序流程 3程序相关问题3.1程序解决的核心问题利用文件的输入输出流,按字符读取文件内容,把读取的内容,注意进行处理后,在重新写入新文件,实现文件加密。用到的类:FileRead,FileWrite.添加窗体并布置面板,中间用到了,弹出对话框的事件。设计的类有,Frame,Panel,JOptionPane。文件选择器的载入。通过为按钮添加事件监听,来实现文件选择器的触发操作。用到的类为:JFileChooser。自定义异常的种类,实现异常的灵活应用。适当的调整程序的

4、终止点或者循环点。3.2程序源代码import java.awt.*;import java.awt.event.*;import java.io.*;import javax.swing.*;class Myframe extends Frame implements ActionListener FileDialog filedialog_save, filedialog_load; Button button1, button2; Label label; MenuBar bar; Menu menu; MenuItem itemOpen, itemSave; TextArea text

5、a; Myframe(String s) / 创建对话框 super(s); texta = new TextArea(38, 160); button1 = new Button(加密); button2 = new Button(解密); menu = new Menu(文件); itemOpen = new MenuItem(打开); itemSave = new MenuItem(保存); label = new Label(文件浏览窗口); itemOpen.addActionListener(this); itemSave.addActionListener(this); butt

6、on1.addActionListener(this); button2.addActionListener(this); filedialog_save = new FileDialog(this, 保存文件对话框, FileDialog.SAVE); filedialog_load = new FileDialog(this, 打开文件对话框, FileDialog.LOAD); filedialog_save.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) filedialog_

7、save.setVisible(false); ); filedialog_load.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) filedialog_load.setVisible(false); ); Box box1 = Box.createHorizontalBox(); / 创建一个从左到右显示其组件的 box1; Box box2 = Box.createVerticalBox(); / 创建一个从上到下显示其组件的 box2; Box box3 = Box.creat

8、eVerticalBox(); Box boxbase = Box.createVerticalBox(); Panel panel1 = new Panel(); Panel panel2 = new Panel(); setMenuBar(bar = new MenuBar(); bar.add(menu); menu.add(itemOpen); menu.add(itemSave); panel1.add(button1); panel1.add(button2); box1.add(panel1); box2.add(label); panel2.add(texta); box3.a

9、dd(panel2); boxbase.add(box1); boxbase.add(box2); boxbase.add(box3); add(boxbase); setLayout(new FlowLayout(); setBounds(100, 0, 1200, 750); setVisible(true); addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); / “关闭”窗口事件; public void actionPerformed(Act

10、ionEvent e) / 查找读入文件 if (e.getSource() = itemOpen) filedialog_load.setVisible(true); texta.setText(null); String s; if (filedialog_load.getFile() != null) try File file = new File(filedialog_load.getDirectory(), filedialog_load.getFile(); FileReader file_reader = new FileReader(file);/ 读取字符流 Buffere

11、dReader in = new BufferedReader(file_reader); while (s = in.readLine() != null) texta.append(s + n); in.close(); file_reader.close(); catch (IOException e1) if (e.getSource() = itemSave) / 查找写入的文件 filedialog_save.setVisible(true); if (filedialog_save.getFile() != null) try File file = new File(filed

12、ialog_save.getDirectory(), filedialog_save.getFile(); FileWriter tofile = new FileWriter(file); / 读取字符流 BufferedWriter out = new BufferedWriter(tofile); out.write(texta.getText(), 0, (texta.getText().length(); out.close(); tofile.close(); catch (IOException e2) if (e.getSource() = button1) char a =

13、texta.getText().toCharArray(); / 把text中获得的文本,进行初始化,与原字符串长度相等,并将该字符串对象的全部字符复制到该数组a中 texta.setText(null); int n; char secret = ; for (int i = 0; i a.length; i+) char c = (char) (secret ai); / 进行异或运算 texta.append( + c); if (e.getSource() = button2) char a = texta.getText().toCharArray(); texta.setText(

14、null); int n; char secret = ; for (int i = 0; i a.length; i+) char c = (char) (secret ai); / 再次异或运算,即还原 texta.append( + c); public class E1 public static void main(String args) Myframe frame = new Myframe(加密与解密); ;3.3程序执行界面图 2 进入程序的主页面图2 输入内容图3 加密之后图4解密之后4 总结与展望通过这次课程设计,我学到了很多。课本的内容虽说是基础,是一切的根本,但是学习

15、基本内容和应用编程,简直就是两个天地。一些编程的思想不是靠基础知识就能学到的,比如文件加密,开始接触到这个题目,第一反应就是,我没学过关于文件加密的内容啊,该怎么办啊。但是当我听了老师的提醒后,才恍然醒悟,加密不一定是你没学的知识,也许它就是用你已经有的知识的变形和应用。所以,知识的应用是灵活多态的。有些知识虽然我们懂了,但是真正去应用时,却会捉襟见肘。比如一个类的程序段,什么时候该用内部类什么时候该用外部类,我们怎么去权衡。什么样的变量可以在哪个部分去调用,都需要我们在实践应用中去加强认识。不只是通过死记硬背就能灵活应用的。知识的海洋是无限大的,我们手头中有的资源也是无穷无尽的每次编程,不可

16、能一点问题都没有。总有这样和那样的难题,出现在我们思维的盲区。我们要充分利用好自己的帮助文档和网上的资源,不要太执着于自己的知识层面,出去荡荡资料,会发现原来这个问题如此简单就可以解决。这次课程设计后,我的学习目标和手段,有了新的改观,不在整天肯书本了,我要用自己学到的知识应用到生活中去编程,去实践,从而磨练自己的编程思维和手法。多看网上的使用编程实例,练习自己的编程思维,学习新方法新思路。5参考文献1 屈辉立,陈可明,石武信.JSP网站编程教程M.第1版, 北京:北京希望电子出版社,2005 2 白勇.用B/S模式构建在线考试系统J,重庆电力高等专科学校学报,2003,10(4): 100130. 3 Jiang Guo,Yuehong Liao,Behzad Parviz.A Survey of J2EE Application Performance Management SystemsJ,Proceedings of the IEEE International Conference on Web Services (ICWS04),2004.6(5):1732.4 VB数据库管理范例:

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2