FileCopyUtils.copy()复制文件

本文介绍如何利用Java的FileCopyUtils.copy()方法高效地复制文件,重点是确保源文件路径正确,例如将1.jpg放置在src目录下,以避免找不到文件的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

import java.io.File;
import java.io.FileOutputStream;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.util.FileCopyUtils;

/**
 * 
 * @Description:   利用spring中的FileCopyUtils.copy()复制文件  
 * @Author :      yc.min              
 * @Date :    2014年1月10日
 */
public class Fileutilscopy {
	public static void main(String[] args) {
		try {
			FileOutputStream os=new FileOutputStream(new File("d:/20.jpg"));
			Resource resource=new ClassPathResource("/1.jpg");
			FileCopyUtils.copy(resource.getInputStream(),os);//将1复制给20
			System.out.print("SUCEESS");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}

 注:

 

Resource resource=new ClassPathResource("/1.jpg");

    1.jpg文件要放到src,目录下,否则会提示文件不存在

------------------------------------------------------------------------------------

引用
初学Spring在用
  Resource rs=new ClassPathResource("applicationContext.xml");
时老是遇到这个错误。后来发现用
ApplicationContext ctx=new  FileSystemXmlApplicationContext
   ("WebContent/WEB-INF/applicationContext.xml");
可以解决这个问题。
仔细研究了下:
之所以我用ClassPathResource中找不到applicationContext.xml是因为
我的这个xml文件在建工程的时候默认放在了WebContent/WEB-INF/下面,
但是用ClassPathResource是在当前目录也就是我这个java文件所在的目下进行寻找。
因此把这个xml文件移动到我的src目录下面就ok了。
同理如果是用ApplicationContext ctx=new  ClassPathXmlApplicationContext()
也是这样是从当前路径寻找,xml文件应在当前目录下。
但是如果用FileSystemXmlApplicationContext呢,它是根据指定的路径来进行寻找,
所以要把路径写完整。现在xml路径在src文件夹下。那就要写:
ApplicationContext ctx=new  
    FileSystemXmlApplicationContext("src/applicationContext.xml");
这是比较直接简单的写法,后来又查了查发现对于FileSystemXmlApplicationContext也可以采用:
1.加上classpath:前缀(这个时候xml要放在当前目录也就是src下)
ApplicationContext ctx=new  FileSystemXmlApplicationContext
    ("classpath:applicationContext.xml");
2.加上file:把路径写全(用这个方法xml可以放任意地方)
ApplicationContext ctx=new  ClassPathXmlApplicationContext
    ("file:F:/workspace/SpringExercis/src/applicationContext.xml");
综上,最简单的方法还是老老实实把xml放在src下方便。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值