Java - 随机文件名生成 - 根据当前时间创建文件夹 - 文件上传后,放置到指定目录下(transferTo方式)

一、随机文件名生成 具体代码演示:

UUID 模块是内置的:


public static String getRandomName(String fileName) {
        int index = fileName.lastIndexOf(".");
        String extension = fileName.substring(index);//获取后缀名
        String uuidFileName = UUID.randomUUID().toString().replace("-", "") + extension;
        return uuidFileName;
}

二、根据当前时间创建文件夹

import java.time.LocalDate;
import com.ruoyi.common.utils.StringUtils;

public static String getDateDir(String fileName) {
	String dataUrl =  LocalDate.now().toString().replace("-","/")+"/";
	System.out.println(dataUrl);

	String newDir = StringUtils.format("{}/", dataUrl);
	System.out.println(newDir );
	return newDir 
	}

输出效果:

/2023/9/15/

三、文件上传后,放置到指定目录下

import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.io.IOException;
import java.nio.file.Paths;


public static String getDateDir(String fileName) {
	String dataUrl =  LocalDate.now().toString().replace("-","/")+"/";
	System.out.println(dataUrl);

	String newDir = StringUtils.format("{}/", dataUrl);
	System.out.println(newDir );
	return newDir 
	}



...
... 省略了类的创建等代码,主要内容如下:
...

public static final String upload(MultipartFile file){
	String absPath = "D:/filesss/" + getDateDir() + originalFilename;
	// 指定目录

	//通过CommonsMultipartFile的方法直接写文件(注意这个时候)
	try {
		/
    	file.transferTo(Paths.get(absPath));;  // 将文件放置在这个路径下
    	/
    	long endTime = System.currentTimeMillis();
    	logger.info("采用file.Transto的运行时间:" + String.valueOf(endTime - startTime) + "ms");
    
	} catch (IOException e) {
       	e.printStackTrace();
	}

}

参考链接

Java使用UUID实现随机生成文件的名称

Java可以通过UUID类来生成一个随机文件名。

Java生成随机数的4种方式,以后就用它了!

Java 根据当前时间创建文件夹

Java很简单的文件上传(transferTo方式)

Java - 根据文件绝对路径,来删除文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值