下面是一個比較簡單的文件復制器
?
?
?
1.復制的具體實現方法
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; /** * 指定位置的文件復制到指定位置. * @author Administrator * */ public class fileCopy { // 文件復制的方法 public void copyFile(String scrPath, String desPath) { // 如果路徑正確,得到源文件以及目標文件 try { FileInputStream fis = new FileInputStream(scrPath); FileOutputStream fos = new FileOutputStream(desPath); //讀取文件,并將讀取到的數據直接寫入磁盤. try { int read = fis.read(); while (read != -1) { //將讀取的數據直接寫到磁盤當中 fos.write((byte)read); read = fis.read(); } //關閉流 fis.close(); //保證數據能完整寫入到磁盤當中 fos.flush(); //關閉流 fos.close(); } catch (IOException e) { e.printStackTrace(); } } catch (FileNotFoundException e) { e.printStackTrace(); } } }
?
?
?
2.界面
import java.awt.FlowLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextField; public class fileCopyUI extends JFrame{ public static void main(String args[]){ fileCopyUI ui = new fileCopyUI(); ui.showUI(); } public void showUI(){ this.setTitle("文件復制器"); this.setSize(300,125); JButton but = new JButton("復制"); JLabel jl = new JLabel(" 源文件:"); JTextField jf = new JTextField(20); JLabel jl1 = new JLabel("目標文件:"); JTextField jf1 = new JTextField(20); this.add(jl); this.add(jf); this.add(jl1); this.add(jf1); this.add(but); this.setLayout(new FlowLayout()); this.setLocationRelativeTo(null); //居中顯示 this.setResizable(false);//不可改變大小 this.setDefaultCloseOperation(EXIT_ON_CLOSE);//關閉界面時推出程序 this.setVisible(true);//顯示界面 ActionListenerImpl l = new ActionListenerImpl(jf,jf1); but.addActionListener(l); } }
?
?
?
3.監聽器
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JTextField; public class ActionListenerImpl implements ActionListener { private JTextField jf; private JTextField jf1; // 獲取文件指定的路徑和關鍵字 public ActionListenerImpl(JTextField jf, JTextField jf1) { this.jf = jf; this.jf1 = jf1; } public void actionPerformed(ActionEvent e) { JButton but = (JButton)e.getSource(); if(but.getText().equals("復制")){ fileCopy fc = new fileCopy(); fc.copyFile(jf.getText(), jf1.getText()); } } }
?
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
