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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

Java流与文件操作汇总.docx

1、Java流与文件操作汇总实验报告课程名称面向对象程序设计实验名称实验八 流与文件操作日期2016-11-18学生学号姓名班级实验目的: 通过本次实验,要求学生能进一步掌握流与文件的操作方法。实验条件: 电脑一台、能上网查阅资料。1. 在课堂代码的基础上,理解相关的文件操作部分的代码,进一步完善记事本的设计。源代码:import java.awt.BorderLayout;import java.awt.Color;import java.awt.EventQueue;import javax.swing.JColorChooser;import javax.swing.JFileChooser

2、;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.border.EmptyBorder;import javax.swing.event.DocumentEvent;import javax.swing.event.DocumentListener;import javax.swing.filechooser.FileFilter;import javax.swing.JTextArea;import javax.swing.JMenuBar;import javax.swing.JMenu;impo

3、rt javax.swing.JMenuItem;import javax.swing.JOptionPane;import javax.swing.JScrollPane;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.awt.print.PrinterJob;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileNotFoundExc

4、eption;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.awt.event.ActionListener;import java.awt.event.ActionEvent;import javax.swing.JPopupMenu;import java.awt.Component;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.

5、KeyStroke;import java.awt.event.KeyEvent;import java.awt.event.InputEvent;import javax.swing.JToolBar;import javax.swing.JLabel;import java.awt.event.KeyAdapter;import javax.swing.JButton;import javax.swing.ImageIcon;public class NotePadPlus extends JFrame private JPanel contentPane; private JTextAr

6、ea txtEditor; private String filePath; private String fileName; private JLabel lblMsg = null; / 自动换行和状态栏 boolean flag = false; /* * Launch the application. */ public static void main(String args) EventQueue.invokeLater(new Runnable() public void run() try NotePadPlus frame = new NotePadPlus(); frame

7、.setVisible(true); catch (Exception e) e.printStackTrace(); ); /* * Create the frame. */ public NotePadPlus() addWindowListener(new WindowAdapter() Override public void windowClosing(WindowEvent e) frmMainWindowClosing(e); ); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 3

8、00); JMenuBar menuBar = new JMenuBar(); setJMenuBar(menuBar); JMenu menu = new JMenu(u6587u4EF6); menuBar.add(menu); JMenuItem miOpenFile = new JMenuItem(u6253u5F00u6587u4EF6); miOpenFile.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) openFileActionPerformed(e); );

9、 miOpenFile.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, InputEvent.CTRL_MASK); menu.add(miOpenFile); JMenuItem miSaveFile = new JMenuItem(u4FDDu5B58u6587u4EF6); miSaveFile.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) / 保存 saveFile(); ); miSaveFile.setAcc

10、elerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_MASK); menu.add(miSaveFile); JMenuItem miSaveAs = new JMenuItem(u53E6u5B58u4E3A.); miSaveAs.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) saveAsActionPerformed(e); ); miSaveAs.setAccelerator(KeyStroke.

11、getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_MASK | InputEvent.ALT_MASK); menu.add(miSaveAs); JMenuItem miExit = new JMenuItem(u9000u51FA); miExit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E, InputEvent.CTRL_MASK); miExit.addActionListener(new ActionListener() public void actionPerformed(Acti

12、onEvent e) notePadPlusClosing(); ); menu.add(miExit); JMenu menu_1 = new JMenu(u7F16u8F91); menuBar.add(menu_1); JMenuItem miColor = new JMenuItem(u989Cu8272); miColor.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) colorAddActionPerformed(e); ); miColor.setAccelera

13、tor(KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_MASK | InputEvent.ALT_MASK); menu_1.add(miColor); JMenuItem miCopy = new JMenuItem(u62F7u8D1D); miCopy.addActionListener(new ActionListener() public void actionPerformed(ActionEvent arg0) txtEditor.copy(); ); miCopy.setAccelerator(KeyStroke.g

14、etKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_MASK); menu_1.add(miCopy); JMenuItem miCut = new JMenuItem(u526Au5207); miCut.addActionListener(new ActionListener() public void actionPerformed(ActionEvent arg0) txtEditor.cut(); ); miCut.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, InputEvent.CTRL

15、_MASK); menu_1.add(miCut); JMenuItem miPaste = new JMenuItem(u7C98u8D34); miPaste.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) txtEditor.paste(); ); miPaste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_MASK); menu_1.add(miPaste); contentPa

16、ne = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5); contentPane.setLayout(new BorderLayout(0, 0); setContentPane(contentPane); JScrollPane scrollPane = new JScrollPane(); contentPane.add(scrollPane, BorderLayout.CENTER); txtEditor = new JTextArea(); txtEditor.addKeyListener(new Key

17、Adapter() Override public void keyPressed(KeyEvent e) editorKeyPressed(e); ); / 文件改变事件 txtEditor.getDocument().addDocumentListener(new DocumentListener() public void changedUpdate(DocumentEvent e) flag = true; public void insertUpdate(DocumentEvent e) flag = true; public void removeUpdate(DocumentEv

18、ent e) flag = true; ); scrollPane.setViewportView(txtEditor); JPopupMenu popupMenu = new JPopupMenu(); addPopup(txtEditor, popupMenu); JMenuItem pmiCopy = new JMenuItem(u62F7u8D1D); pmiCopy.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) txtEditor.copy(); ); pmiCopy

19、.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_MASK); popupMenu.add(pmiCopy); JMenuItem pmiCut = new JMenuItem(u526Au5207); pmiCut.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) txtEditor.cut(); ); pmiCut.setAccelerator(KeyStroke.getKeyStroke

20、(KeyEvent.VK_X, InputEvent.CTRL_MASK); popupMenu.add(pmiCut); JMenuItem pmiPaste = new JMenuItem(u7C98u8D34); pmiPaste.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) txtEditor.paste(); ); pmiPaste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL

21、_MASK); popupMenu.add(pmiPaste); JToolBar tb_tools = new JToolBar(); scrollPane.setColumnHeaderView(tb_tools); JButton btnSave = new JButton(); btnSave.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) saveFile(); ); btnSave.setIcon(new ImageIcon(NotePadPlus.class.get

22、Resource(/images/save.png); tb_tools.add(btnSave); JButton btnCopy = new JButton(); btnCopy.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) txtEditor.copy(); ); btnCopy.setIcon(new ImageIcon(NotePadPlus.class.getResource(/images/copy.png); tb_tools.add(btnCopy); JBu

23、tton btnCut = new JButton(); btnCut.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) txtEditor.cut(); ); btnCut.setIcon(new ImageIcon(NotePadPlus.class.getResource(/images/cut.png); tb_tools.add(btnCut); JButton btnPaste = new JButton(); btnPaste.addActionListener(ne

24、w ActionListener() public void actionPerformed(ActionEvent e) txtEditor.paste(); ); btnPaste.setIcon(new ImageIcon(NotePadPlus.class.getResource(/images/paste.png); tb_tools.add(btnPaste); JToolBar tb_status = new JToolBar(); contentPane.add(tb_status, BorderLayout.SOUTH); lblMsg = new JLabel(u5F53u

25、524Du5B57u6570:0 u5F53u524Du884Cu6570:0); tb_status.add(lblMsg); if (fileName = null | fileName = ) this.setTitle(Untitled.txt); else this.setTitle(fileName); this.setLocationRelativeTo(null); this.setExtendedState(JFrame.MAXIMIZED_BOTH); protected void editorKeyPressed(KeyEvent e) / TODO Auto-gener

26、ated method stub lblMsg.setText(当前字数: + String.valueOf(txtEditor.getText().trim().length() + + 当前行数: + String.valueOf(txtEditor.getLineCount(); /* * 另存为 * * param e */ protected void saveAsActionPerformed(ActionEvent e) / TODO Auto-generated method stub JFileChooser dlg = new JFileChooser(); dlg.set

27、FileFilter(new TxtFileFilter(.txt, 文本文件(*.txt); int result = dlg.showSaveDialog(this); / 打开另存为文件对话框 if (result = JFileChooser.APPROVE_OPTION) File file = dlg.getSelectedFile(); / 设置编辑器标题显示成文件名 this.setTitle(file.getName(); this.filePath = file.getPath(); this.fileName = file.getName(); / 把文件的内容读到文本框

28、 FileWriter fw; try fw = new FileWriter(file); BufferedWriter bw = new BufferedWriter(fw); / 把文本框的内容全部写到文件 fw.write(txtEditor.getText(); bw.close(); fw.close(); catch (FileNotFoundException e1) / TODO Auto-generated catch block e1.printStackTrace(); catch (IOException e1) / TODO Auto-generated catch block e1.printStackTrace(); /* * 打开文件操作 * * param e */ protected void openFileActionPerformed(ActionEvent e) / TODO Auto-generated method stub JFileChooser dlg = new JFileChooser(); TxtFileFilter txtFileFilter = new TxtFileFilter(.txt, 文本文件(*.txt)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1