用java写的赋值文件

import java.awt.*;
import java.awt.event.*;
import java.io.*;


import javax.swing.*;


public class CopyFileDemo extends JFrame{


JFileChooser fileChooser;//文件选择器
JTextField jtfSourceFile;//源文件路径
JTextField jtfTargetFile;//目标文件路径
JButton selectFile1;//源文件的选择按钮
JButton selectFile2;//目标文件的选择按钮
JButton copyButton;//拷贝按钮

public CopyFileDemo(){
super("文件复制");

fileChooser=new JFileChooser();

//得到容器
Container container=getContentPane();
jtfSourceFile=new JTextField(16);//实例化
jtfTargetFile=new JTextField(16);

selectFile1=new JButton("选择");
selectFile2=new JButton("选择");
copyButton=new JButton("拷贝");

Box box=Box.createVerticalBox();//实例化box,用于容器组件

JPanel panel=new JPanel();
panel.add(new JLabel("源文件"));
panel.add(jtfSourceFile);
panel.add(selectFile1);
box.add(panel);

panel=new JPanel();
panel.add(new JLabel("目标文件"));
panel.add(jtfTargetFile);
panel.add(selectFile2);
box.add(panel);

box.add(copyButton);
container.add(box);//将组件放置到容器里

//选择按钮的监听事件
selectFile1.addActionListener(new SelectFileListener());
selectFile2.addActionListener(new SelectFileListener());
//拷贝按钮事件
copyButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent event){
//文件拷贝
String sourceFile=jtfSourceFile.getText();//获取源文件文本框里的路径
String targetFile=jtfTargetFile.getText();//获取目标文件文本框里的路径
if(copy(sourceFile,targetFile)){//拷贝文件
JOptionPane.showMessageDialog(CopyFileDemo.this, "拷贝成功");
}else{
JOptionPane.showMessageDialog(CopyFileDemo.this, "拷贝失败");
}
}
});

setSize(340,160);//设置窗体大小
setVisible(true);//设置可见
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//点击关闭窗口时退出程序

}

//选择按钮的监听事件
class SelectFileListener implements ActionListener{
public void actionPerformed(ActionEvent event){
//避免多次打开选择器
if(fileChooser.showOpenDialog
(CopyFileDemo.this)==JFileChooser.APPROVE_OPTION){
String fileName=fileChooser.getSelectedFile().getAbsolutePath();//得到选择文件的绝对路径
if(event.getSource().equals(selectFile1)){//判断事件来自哪个按钮
jtfSourceFile.setText(fileName);//设置源文件路径
}else{
jtfTargetFile.setText(fileName);//设置目标文件路径
}
}
}
}


//文件拷贝的方法,file1源文件路径,file2目标文件路径
public boolean copy(String file1,String file2)
{
try {
File fileIn=new File(file1);//用路径名生成源文件
File fileOut=new File(file2);//用路径名生成目标文件

FileInputStream fin=new FileInputStream(fileIn);//文件的输入流
FileOutputStream fout=new FileOutputStream(fileOut);//得到文件的输出流

byte[] bytes=new byte[1024];//初始化字节数组,用于缓冲
int c=0;
while((c=fin.read(bytes))!=-1){//循环读取,如果文件未读完
fout.write(bytes, 0, c);
}
fin.close();
fout.close();
return true;

} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}

public static void main(String[] args){
new CopyFileDemo();
}

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值