⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fileexport.java

📁 一个应用timer的小程序
💻 JAVA
字号:
package net.sujee.javatimer;import javax.swing.*;import javax.swing.border.*;import java.awt.*;import java.awt.event.*;import java.io.*;import java.util.*;import net.sujee.util.GenUtil;public class FileExport extends JDialog implements ActionListener{   JButton buttonSave;   JButton buttonClose;   JTextArea textArea;   JFileChooser fileChooser;   Vector taskList;   public FileExport (Frame parent, int width, int height)   {      super (parent, "Export Task Data");      setSize(width, height);      setModal(true);      setDefaultCloseOperation(JDialog.HIDE_ON_CLOSE);      setLocationRelativeTo(parent);      textArea = new JTextArea ();      textArea.setEditable(false);      textArea.setBorder( new TitledBorder(new EtchedBorder(                   EtchedBorder.RAISED,Color.white,new Color(137, 137, 137)),"Task Export"));      textArea.setAutoscrolls(true);      JScrollPane scrollpane = new JScrollPane (textArea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,                  JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);      buttonSave = new JButton ("Save to File...");      buttonClose = new JButton ("Close");      buttonSave.addActionListener(this);      buttonClose.addActionListener(this);      getContentPane().setLayout(new BorderLayout ());      getContentPane().add (scrollpane, BorderLayout.CENTER);      JPanel p1 = new JPanel ();      p1.add (buttonSave);      p1.add (buttonClose);      getContentPane().add (p1, BorderLayout.SOUTH);      fileChooser = new JFileChooser();      fileChooser.setFileSelectionMode( JFileChooser.FILES_ONLY );      fileChooser.setMultiSelectionEnabled( false );      fileChooser.setDialogType(JFileChooser.SAVE_DIALOG);      ExampleFileFilter filter = new ExampleFileFilter( "txt", "Text files" );      fileChooser.addChoosableFileFilter( filter );   }   public void show (Vector taskList)   {      this.taskList = taskList;      populateTextArea ();      show ();   }   private void populateTextArea ()   {      int len = taskList.size();      StringBuffer buf = new StringBuffer ();      for (int i=0; i < len ; i++)      {         Task t = (Task) taskList.get(i);         buf.append(t.dump() + GenUtil.NEWLINE);      }      textArea.setText(buf.toString());   }   public void actionPerformed(ActionEvent e)   {      Object src = e.getSource();      if ( src == buttonClose)      {         hide ();      }      else if ( src == buttonSave)      {         int ret = fileChooser.showOpenDialog( this );         if ( ret == JFileChooser.APPROVE_OPTION )         {            try            {            // if name doesn't end with .txt extension            // set the extension            File choosenFile = fileChooser.getSelectedFile();            if ( !choosenFile.getName().endsWith( ".txt" ) )               choosenFile = new File( fileChooser.getSelectedFile().getAbsolutePath() + ".txt" );               FileWriter out = new FileWriter ( choosenFile);               out.write("# Project Timer data export - " + new Date ().toString ());               out.write(textArea.getText());               out.close();            }            catch (Exception ex)            {               ex.printStackTrace();            }         }      }   }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -