package copy;
import java.awt.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
public class CopyFile extends JFrame implements ActionListener{
JTextField srctext=new JTextField(20);
JButton srcbutton=new JButton("...");
JTextField totext=new JTextField(20);
JButton tobutton=new JButton("...");
JButton copybutton=new JButton("复制");
public CopyFile()
{
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel srcpanel=new JPanel();
srcpanel.add(new JLabel("请选择要复制的文件:"));
srcpanel.add(srctext);
srcpanel.add(srcbutton);
srcbutton.addActionListener(this);
JPanel topanel=new JPanel();
topanel.add(new JLabel("请选择文件存放目录:"));
topanel.add(totext);
topanel.add(tobutton);
tobutton.addActionListener(this);
JPanel copypanel=new JPanel();
copypanel.add(copybutton);
copybutton.addActionListener(this);
this.setLayout(new GridLayout(3,1));
this.add(srcpanel);
this.add(topanel);
this.add(copypanel);
this.setLocation(300,300);
this.setResizable(false);
this.setTitle("文件复制器");
this.pack();
}
public void copyFile(String srcfile, String tofile) {
try {
int t;
FileReader fin = new FileReader(srcfile);
FileWriter fout = new FileWriter(tofile);
while ((t = fin.read()) > 0) {
System.out.print((char) t);
fout.write((char) t);
}
fin.close();
fout.flush();
fout.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==srcbutton)
{
JFileChooser chooser=new JFileChooser("");
chooser.setDialogType(JFileChooser.OPEN_DIALOG);
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
chooser.setDialogTitle("请选择要复制的文件");
if(chooser.showOpenDialog(this)==chooser.APPROVE_OPTION)
{
srctext.setText(chooser.getSelectedFile().getAbsolutePath());
}
}
if(e.getSource()==tobutton)
{
JFileChooser chooser=new JFileChooser("");
chooser.setDialogType(JFileChooser.OPEN_DIALOG);
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
chooser.setDialogTitle("请选择保存到哪个文件");
if(chooser.showOpenDialog(this)==chooser.APPROVE_OPTION)
{
totext.setText(chooser.getSelectedFile().getAbsolutePath());
}
}
if (e.getSource() == copybutton)
{
if (srctext.getText().equals("") || totext.getText().equals(""))
{
JOptionPane.showMessageDialog(this, "请设置源文件或目标路径");
}
else
{
File tofile = new File(totext.getText());
String filename = tofile.getName();
System.out.println(totext.getText());
System.out.println(tofile.getName());/////
this.copyFile(srctext.getText(), totext.getText() );
}
}
}
public static void main(String[] str)
{
JFrame.setDefaultLookAndFeelDecorated(true);
new CopyFile().show();
}
}
分享到:
相关推荐
FATFS文件系统复制文件和文件夹 FATFS文件系统是一种轻量级的文件系统,广泛应用于嵌入式系统和便携式存储设备中。在STM32F103RCT6芯片上,使用SDIO口接口TF卡1,SPI2口接口TF卡2,实现了FATFS文件系统的移植和文件...
在IT领域,尤其是在系统管理和自动化任务执行中,有时我们需要实时监控某个目录下的文件变化,并在文件发生变动时执行特定操作,如复制文件到其他位置。这个场景可以通过编程实现,常用的编程语言如Python、Java或C#...
在易语言中,复制文件到指定目录是一项常见的操作,这在软件开发、数据迁移或备份等场景中十分实用。本篇文章将深入讲解如何使用易语言实现这一功能,并探讨相关知识点。 首先,我们需要理解易语言的基本结构。...
本教程将详细介绍如何在这样的环境下遍历文件夹、复制文件、删除文件以及复制文件内容。 一、遍历文件夹 在C#中,我们可以使用`System.IO`命名空间下的`DirectoryInfo`类来遍历文件夹。以下是一个简单的示例: ``...
5. **复制文件 (复制文件)**:复制文件的命令是“复制文件到”,它接受源文件路径和目标文件路径作为参数,实现源文件到目标位置的复制。 6. **移动文件 (移动文件)**:与复制类似,但源文件在移动后不再存在,使用...
在标题提到的“易语言带进度复制文件例程”中,我们主要关注的是如何在复制文件的过程中显示进度条,以提高用户体验。 在编程中,尤其是在处理大文件或大量文件复制时,进度显示是非常重要的功能。用户通常希望看到...
在易语言中,复制文件或目录是一项基本的操作,对于软件开发和数据管理至关重要。本节将深入探讨易语言中实现这一功能的相关知识点。 首先,"复制文件或目录"是程序设计中的常见任务,涉及到文件系统操作。在易语言...
批量复制文件小工具是一款实用的计算机应用程序,设计用于帮助用户高效地处理大量文件的复制任务。在日常工作中,我们可能需要将同一组文件或文件夹从一个位置移动到另一个位置,尤其是在大型项目或数据迁移中,手动...
在IT领域,定时复制文件是一项基础但至关重要的任务,尤其对于多台计算机间的数据同步和备份策略。"定时复制文件到指定电脑"的功能通常通过自动化脚本或专门的同步工具来实现,它允许用户设置一个预定义的时间间隔,...
在MFC(Microsoft Foundation Classes)框架下,C++程序员经常需要处理文件操作,例如复制文件到指定路径。这个过程涉及到Windows API的使用,因为MFC是构建在Windows API之上的。下面将详细介绍如何在MFC C++环境中...
在“易语言源码易语言复制文件到指定目录源码.rar”这个压缩包中,我们主要关注的是如何使用易语言来实现文件的复制功能,这一功能在软件开发和数据管理中具有广泛应用。 首先,我们需要了解易语言的基本结构。...
C#复制文件到指定文件夹 C#复制文件到指定文件夹是指使用C#语言将文件从一个目录下复制到另一个目录下,以下是四种不同的方法: 首先,我们可以使用Process类来调用DOS命令来实现文件复制。通过使用Process类,...
在MFC(Microsoft Foundation Classes)框架中,复制文件到指定目录是常见的文件操作任务,尤其在开发Windows桌面应用程序时。MFC提供了丰富的类库来简化这类操作,如CFile、CFileFind等。这里我们将详细探讨如何...
在C++编程中,处理文件和目录是常见的任务,包括移动文件、复制文件以及创建新的目录。这些操作在很多应用程序中都是必要的,比如数据备份、文件管理器或者系统工具等。接下来,我们将深入探讨如何使用C++来实现这些...
在C#编程中,复制文件到指定目录是一项常见的任务,特别是在构建软件或处理文件系统操作时。本项目提供了一个简洁的源代码示例,旨在简化这个过程,使其更易于理解和扩展。下面,我们将深入探讨如何在C#中实现这一...
在IT领域,尤其是在软件开发中,"复制文件并带有进度条"是一个常见的需求,尤其是在大量数据传输或长时间操作时,进度条能提供用户友好的体验,让用户了解操作的状态和预计剩余时间。本教程将深入探讨如何实现这个...
在易语言中,处理文件操作是常见的任务之一,包括复制文件和移动文件。这两个功能在软件开发中非常重要,例如在备份数据、安装程序或更新文件时都会用到。 复制文件在易语言中通常通过调用特定的系统API函数来实现...
KUKA 机器人控制器电脑 D 盘复制文件 KUKA 机器人控制器电脑 D 盘复制文件是指从 KUKA 机器人控制柜 KRC4 操作系统电脑 D 盘中复制文件的过程。这个过程需要在机器人上电开机后,通过示教器的 HMI 界面进入文件菜单...
"按文件名清单搜索复制文件"这个工具就是专为这类需求设计的,它能够帮助用户高效地定位并复制大量文件。下面将详细阐述这个工具的核心功能、工作原理以及相关技术知识点。 1. **核心功能**: - **文件搜索**:...
在复制文件的场景中,我们需要使用`QFile`来打开源文件和目标文件,并进行数据的读取与写入。 接下来,`copy`函数是`QFile`类的一个静态成员,可以用来复制文件。它的基本使用方法是`QFile::copy(const QString &...