java-保存file_java保存文件
java 保存file_java保存文件
package com.singlee.util;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;
import org.apache.commons.io.FileUtils;
/**
保存文件到服务器
@author mingzl
*/
public class SaveFile {
/**
改名称的方法,(新名称=原名称++年月日时分秒时间++八位随机数)
@param oldname
原名称
@return newName 新名称
*/
public String changName(String oldName) {
// 第一步:得到系统时间
SimpleDateFormat ff = new SimpleDateFormat(“yyyy-MM-dd-hh-mm-ss”);
Date d = new Date();
String time = ff.format(d);
// 第二步:得到一个随机数
int rad = new Random().nextInt(900000000);
// 第三步:得到原文件的后缀名如:.jpg .doc .txt
String lastName = oldName.substring(oldName.lastIndexOf("."));
// 第四步:拼装新名(保证唯一性)
String newName = oldName + “” + time + “” + rad + lastName;
System.out.println(“文件新名称:” + newName);
return newName;
}
/**
保存文件
@param file
保存的文件
@param filename
保存文件的名称(参考)
@param savepath
文件保存的路径
@param saveasnewname
是否以新名字保存
@return boolean (true:保存成功;false:保存失败)
*/
public boolean save(File file, String filename, String savepath,
boolean saveasnewname) {
filename = saveasnewname ? changName(filename) : filename;
File f = new File(savepath, filename);
try {
FileUtils.copyFile(file, f);
} catch (IOException e) {
e.printStackTrace();
return false;
}
return true;
}
}